Panic on resume ACPI / ATA / UMA

Sam Leffler sam at errno.com
Thu Aug 19 09:15:36 PDT 2004


On Wednesday 18 August 2004 10:30 pm, Anish Mistry wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> With CURRENT as of a few hours ago (12:00 AM EST) I'm getting the following
> panic below which then results in a reboot without creating a core dump. 
> How to repeat on my laptop:
> 1) suspend (close lid)
> 2) resume (open lid)
> - - At this point the lid switch stops working so to suspend again...
> 3) suspend (acpiconf -s 3)
> 4) resume (press power button)
>
> ASL:
> http://am-productions.biz/docs/littleguy.asl.gz
> DMESG:
> http://am-productions.biz/docs/dmesg.txt.gz
>
> After a few seconds the following appears:
>
> ad0: WARNING - WRITE_DMA interrupt was seen but timeout fired LBA=12086925
> ad0: WARNING - READ_DMA interrupt was seen but timeout fired LBA=13004061
> ad0: WARNING - READ_DMA interrupt was seen but timeout fired LBA=13004061
> acpi_cmbat1: battery initialization failed, giving up
> ad0: WARNING - READ_DMA interrupt was seen but taskqueue stalled
> LBA=13004061 Slab at 0xc15e4f70, freei 7 = 0.
> panic: Duplicate free of item 0xc15e439c from zone 0xc0c44c60(g_bio)

I hit identical behaviour w/o suspend-resume on upgrading an ibm t41p (it 
panics on boot).  The upgrade was, I believe, from an 8/10 kernel to an 8/18 
kernel so some commit to the ata code in that timeframe is likely the cause.  
Looking through the logs this appears most likely:

cvs commit: src/sys/dev/ata ata-all.c ata-lowlevel.c ata-queue.c

From: SXren Schmidt <sos at FreeBSD.org>
To: src-committers at FreeBSD.org, cvs-src at FreeBSD.org, cvs-all at FreeBSD.org
Date: Monday 02:32:35 am

sos         2004-08-16 09:32:35 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/ata          ata-all.c ata-lowlevel.c ata-queue.c 
  Log:
  Improve (hopefully) on the workaround code for devices that doesn't
  interrupt when command is done, ie some ATAPI CD drives with no
  media loaded.

Don't know if backing out this change requires undoing other stuff.

	Sam


More information about the freebsd-current mailing list