Date: Sat, 29 Mar 2008 20:43:24 +0300 From: "Andrey V. Elsukov" <bu7cher@yandex.ru> To: vwe@freebsd.org Cc: freebsd-bugs@freebsd.org, soralx@cydem.org, sos@freebsd.org Subject: Re: kern/122045: [ata][panic] reiniting detached ata channel kills the kernel Message-ID: <687901206812604@webmail50.yandex.ru> In-Reply-To: 9060000000196638044 References: 9060000000196638044
next in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
29.03.08, 18:50, vwe@FreeBSD.org:
> Synopsis: [ata][panic] reiniting detached ata channel kills the kernel
> State-Changed-From-To: feedback->open
> State-Changed-By: vwe
> State-Changed-When: Sat Mar 29 15:48:13 UTC 2008
> State-Changed-Why:
> feedback received by private mail, not a problem with mounted filesystem
> system panics without active mounts on the detached drive
> (clean umount before detach done).
ata(4) freed resources and mutexes when you are detaching it. So, you should
attach it first before reinit, because it is trying to get access to freed
resources. Try this patch.
--
WBR, Andrey V. Elsukov
[-- Attachment #2 --]
Index: src/sys/dev/ata/ata-all.c
===================================================================
RCS file: /ncvs/src/sys/dev/ata/ata-all.c,v
retrieving revision 1.280
diff -u -b -p -r1.280 ata-all.c
--- src/sys/dev/ata/ata-all.c 4 Oct 2007 19:17:15 -0000 1.280
+++ src/sys/dev/ata/ata-all.c 29 Mar 2008 17:41:53 -0000
@@ -372,7 +372,6 @@ ata_ioctl(struct cdev *dev, u_long cmd,
!(device = devclass_get_device(ata_devclass, *value)))
return ENXIO;
error = ata_reinit(device);
- ata_start(device);
break;
case IOCATAATTACH:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?687901206812604>
