Re: atapicam panic

2003-09-16 Thread Thomas Quinot
Le 2003-09-06, Petri Helenius écrivait :

 Should this work or is the work to port this to ATAng still undergoing?

This should work, but does not, so the work is still in progress...
 
 panic: mutex Giant not owned at ../../../dev/ata/atapi-cam.c:117

Please try this patch.

Index: atapi-cam.c
===
RCS file: /home/ncvs/src/sys/dev/ata/atapi-cam.c,v
retrieving revision 1.22
diff -u -r1.22 atapi-cam.c
--- atapi-cam.c 11 Sep 2003 17:34:47 -  1.22
+++ atapi-cam.c 16 Sep 2003 12:51:35 -
@@ -114,13 +114,10 @@
 struct cam_path *path = NULL;
 int unit;
 
-GIANT_REQUIRED;
-
 if (mtx_initialized(atapicam_softc_mtx) == 0)
mtx_init(atapicam_softc_mtx, ATAPI/CAM softc mutex, NULL, MTX_DEF);
 
 mtx_lock(atapicam_softc_mtx);
-
 LIST_FOREACH(scp, all_buses, chain) {
if (scp-ata_ch == ata_ch)
break;
@@ -130,10 +127,12 @@
 if (scp != NULL)
return;
 
-if ((scp = malloc(sizeof(struct atapi_xpt_softc),
- M_ATACAM, M_NOWAIT | M_ZERO)) == NULL)
-   goto error;
+scp = malloc(sizeof(struct atapi_xpt_softc),
+M_ATACAM, M_NOWAIT | M_ZERO));
 
+mtx_lock (Giant);
+if (scp == NULL)
+   goto error;
 scp-ata_ch = ata_ch;
 TAILQ_INIT(scp-pending_hcbs);
 LIST_INSERT_HEAD(all_buses, scp, chain);
@@ -165,10 +164,12 @@
 
 setup_async_cb(scp, AC_LOST_DEVICE);
 reinit_bus(scp, cold ? BOOT_ATTACH : ATTACH);
+mtx_unlock (Giant);
 return;
 
 error:
 free_softc(scp);
+mtx_unlock (Giant);
 }
 
 void

-- 
[EMAIL PROTECTED]


pgp0.pgp
Description: PGP signature


atapicam panic

2003-09-06 Thread Petri Helenius
Atacontrol detach / attach seems to panic if atapicam is complied in the 
kernel.
Should this work or is the work to port this to ATAng still undergoing?

This is current from four days ago, just after Soren's ar DMA size commit.

# atacontrol detach 4
ad8: deleted from ar0 disk1
ar0: WARNING - mirror lost
GEOM: destroy disk ad8 dp=0xc25f4e70
ad8: WARNING - removed from configuration
# atacontrol attach 4
GEOM: create disk ad8 dp=0xc2746870
ad8: 76319MB WDC WD800JB-00CRA1 [155061/16/63] at ata4-master UDMA100
panic: mutex Giant not owned at ../../../dev/ata/atapi-cam.c:117
Debugger(panic)
Stopped at  Debugger+0x54:  xchgl   %ebx,in_Debugger.0
db trace
Debugger(c03b00f0,c04142a0,c03af7c7,cd690a58,100) at Debugger+0x54
panic(c03af7c7,c03af902,c039de55,75,0) at panic+0xd5
_mtx_assert(c04125e0,1,c039de55,75,10) at _mtx_assert+0xec
atapi_cam_attach_bus(c2588a00,c24f3980,602,c0150480,c2588a00) at 
atapi_cam_attach_bus+0x37
ata_attach(c258b000,0,c039bb88,14b,0) at ata_attach+0x168
ata_ioctl(c040e870,c4546101,c282d800,3,c0eb0d10) at ata_ioctl+0x457
spec_ioctl(cd690b7c,cd690c28,c027f2f1,cd690b7c,c02105dd) at spec_ioctl+0x19e
spec_vnoperate(cd690b7c,c02105dd,c0415920,1,c03fc720) at spec_vnoperate+0x18
vn_ioctl(c26d3484,c4546101,c282d800,c2812780,c0eb0d10) at vn_ioctl+0x1a1
ioctl(c0eb0d10,cd690d10,c03c6e36,3eb,3) at ioctl+0x475
syscall(2f,2f,2f,805f2b7,bfbffd2a) at syscall+0x273
Xint0x80_syscall() at Xint0x80_syscall+0x1d
--- syscall (54, FreeBSD ELF32, ioctl), eip = 0x8049a3f, esp = 
0xbfbff76c, ebp = 0xbfbffc18 ---
db

Pete

___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: atapicam panic at boot.

2003-08-27 Thread Doug Barton
On Tue, 26 Aug 2003, Kenneth Culver wrote:

 I think some people are already tracking this down related to the recent
 update of the ata drivers.

It would be nice if those people would post regarding their progress. A
lot of people depend on atapicam.

Doug

-- 

This .signature sanitized for your protection
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


atapicam panic at boot.

2003-08-26 Thread Alfred Perlstein
last night's sources:

free_hcb()
atapi_action()
xpt_run_dev_sendq()
xpt_action()
probe_start()
...

appears to be a memory access error.

-Alfred
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]


Re: atapicam panic at boot.

2003-08-26 Thread Kenneth Culver
 free_hcb()
 atapi_action()
 xpt_run_dev_sendq()
 xpt_action()
 probe_start()
 ...

I think some people are already tracking this down related to the recent
update of the ata drivers.

Ken
___
[EMAIL PROTECTED] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to [EMAIL PROTECTED]