Jeff Roberson wrote:
I have two problems with this patch. First, it seems to break my amr device which is no longer able to probe disks. Backing out this commit fixes the problem.

Secondly, with WITNESS enabled my console is full of the following errors on boot:

uma_zalloc_arg: zone "16" with the following non-sleepable locks held:^M
exclusive sleep mutex ATA state lock r = 0 (0xffffff0004117678) locked @ dev/ata
/ata-queue.c:194^M
exclusive sleep mutex ATA queue lock r = 0 (0xffffff00041176b0) locked @ dev/ata
/ata-queue.c:177^M
KDB: stack backtrace:^M
db_trace_self_wrapper() at db_trace_self_wrapper+0x27^M
kdb_backtrace() at kdb_backtrace+0x3e^M
witness_warn() at witness_warn+0x374^M
uma_zalloc_arg() at uma_zalloc_arg+0x3f^M
uma_zalloc() at uma_zalloc+0x20^M
malloc() at malloc+0x122^M
sysctl_add_oid() at sysctl_add_oid+0x11d^M
alloc_bounce_zone() at alloc_bounce_zone+0x204^M
bus_dma_tag_create() at bus_dma_tag_create+0x2d1^M
ata_dmaload() at ata_dmaload+0x341^M
ata_begin_transaction() at ata_begin_transaction+0x22f^M
ata_start() at ata_start+0x24c^M
ata_queue_request() at ata_queue_request+0x3da^M
ata_raid_rw() at ata_raid_rw+0x14b^M
ata_raid_adaptec_read_meta() at ata_raid_adaptec_read_meta+0x8a^M
ata_raid_read_metadata() at ata_raid_read_metadata+0x297^M
ata_raid_subdisk_attach() at ata_raid_subdisk_attach+0x57^M
DEVICE_ATTACH() at DEVICE_ATTACH+0x84^M
device_attach() at device_attach+0x3c^M
device_probe_and_attach() at device_probe_and_attach+0x10d^M
bus_generic_attach() at bus_generic_attach+0x23^M
ad_attach() at ad_attach+0x25f^M
DEVICE_ATTACH() at DEVICE_ATTACH+0x84^M
device_attach() at device_attach+0x3c^M
device_probe_and_attach() at device_probe_and_attach+0x10d^M
bus_generic_attach() at bus_generic_attach+0x23^M
ata_identify() at ata_identify+0x225^M
ata_boot_attach() at ata_boot_attach+0x54^M
run_interrupt_driven_config_hooks() at run_interrupt_driven_config_hooks+0x79^M
mi_startup() at mi_startup+0x11b^M

It's not legal to call bus_dma_tag_create with locks held.

Thanks,
Jeff

Also, it seems to panic my machine. Can't confirm though, and since it was during a installworld my machine is too botched to do anything but reinstall. The panic string is: Too many DMA segment entries and the top of the backtrace, before the call to panic() is a call to ata_setup_interrupt(). Can't get further though as the system is totaly botched.
The controller is a intel AHCI one. I also got the same LORs as Jeff.
Regards!
Niclas


On Thu, 10 Apr 2008, S�ren Schmidt wrote:

sos         2008-04-10 13:05:05 UTC

 FreeBSD src repository

 Modified files:
   sys/dev/ata          ata-all.c ata-all.h ata-card.c ata-cbus.c
                        ata-chipset.c ata-disk.c ata-disk.h
                        ata-dma.c ata-isa.c ata-lowlevel.c
                        ata-pci.c ata-pci.h ata-queue.c
                        ata-raid.c ata-raid.h ata-usb.c ata_if.m
                        atapi-cd.c atapi-cd.h atapi-fd.c
                        atapi-fd.h atapi-tape.c atapi-tape.h
 Log:
 Add experimental support for SATA Port Multipliers

 Support is working on the Silicon Image SiI3124/3132.
 Support is working on some AHCI chips but far from all.

Remember this is WIP, so test reports and (constructive) suggestions are welcome!

 Revision  Changes    Path
 1.282     +73 -57    src/sys/dev/ata/ata-all.c
 1.129     +42 -25    src/sys/dev/ata/ata-all.h
 1.41      +1 -1      src/sys/dev/ata/ata-card.c
 1.26      +1 -1      src/sys/dev/ata/ata-cbus.c
 1.213     +797 -266  src/sys/dev/ata/ata-chipset.c
 1.208     +117 -48   src/sys/dev/ata/ata-disk.c
 1.54      +1 -1      src/sys/dev/ata/ata-disk.h
 1.151     +160 -132  src/sys/dev/ata/ata-dma.c
 1.32      +1 -1      src/sys/dev/ata/ata-isa.c
 1.81      +31 -33    src/sys/dev/ata/ata-lowlevel.c
 1.124     +41 -40    src/sys/dev/ata/ata-pci.c
 1.84      +1 -2      src/sys/dev/ata/ata-pci.h
 1.70      +8 -3      src/sys/dev/ata/ata-queue.c
 1.127     +1 -1      src/sys/dev/ata/ata-raid.c
 1.47      +1 -1      src/sys/dev/ata/ata-raid.h
 1.8       +1 -2      src/sys/dev/ata/ata-usb.c
 1.8       +1 -1      src/sys/dev/ata/ata_if.m
 1.197     +4 -9      src/sys/dev/ata/atapi-cd.c
 1.48      +1 -1      src/sys/dev/ata/atapi-cd.h
 1.112     +3 -7      src/sys/dev/ata/atapi-fd.c
 1.28      +1 -1      src/sys/dev/ata/atapi-fd.h
 1.105     +5 -13     src/sys/dev/ata/atapi-tape.c
 1.26      +1 -1      src/sys/dev/ata/atapi-tape.h


------------------------------------------------------------------------

_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to