Date: Fri, 11 Apr 2008 06:04:19 +0200 From: Niclas Zeising <niclas.zeising@gmail.com> To: Jeff Roberson <jroberson@jroberson.net> Cc: cvs-src@FreeBSD.org, src-committers@FreeBSD.org, cvs-all@FreeBSD.org, =?UTF-8?B?77+9?= <sos@FreeBSD.org> Subject: Re: cvs commit: src/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 ... Message-ID: <47FEE343.9000705@gmail.com> In-Reply-To: <20080410170530.V43186@desktop> References: <200804101305.m3AD55DK066187@repoman.freebsd.org> <20080410170530.V43186@desktop>
next in thread | previous in thread | raw e-mail | index | archive | help
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 "cvs-all-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?47FEE343.9000705>