Date: Mon, 18 Nov 2002 18:10:53 +0100 From: Thomas Quinot <thomas@FreeBSD.ORG> To: Christian Brueffer <chris@unixpages.org> Cc: freebsd-stable@FreeBSD.ORG Subject: Re: apm suspend/resume panic - atapicam related Message-ID: <20021118171053.GA82889@melusine.cuivre.fr.eu.org> In-Reply-To: <20021118135148.GH11536@unixpages.org> References: <20021117032558.GF11536@unixpages.org> <20021117230520.GB31217@melusine.cuivre.fr.eu.org> <20021118135148.GH11536@unixpages.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Le 2002-11-18, Christian Brueffer écrivait :
> Yes, the message also appears with a kernel without atapicam.
> Also, atapicd is enabled when I disable atapicam.
It would also be interesting to know whether the problem appears with
atapicam enabled and atapicd disabled. Might be an unforeseen
interaction between the two of them.
> I tried a kernel with the patch you sent, but it panics in the same way
> as before.
Hum. Well. Can you try to reproduce the panic with the following patch
instead:
Index: ata-all.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/ata/ata-all.c,v
retrieving revision 1.50.2.42
diff -u -r1.50.2.42 ata-all.c
--- ata-all.c 1 Nov 2002 22:04:06 -0000 1.50.2.42
+++ ata-all.c 18 Nov 2002 17:06:33 -0000
@@ -872,8 +872,9 @@
ATA_FORCELOCK_CH(ch, ATA_CONTROL);
ch->running = NULL;
devices = ch->devices;
- ata_printf(ch, -1, "resetting devices .. ");
+ ata_printf(ch, -1, "resetting ata ch=%p, dev=%x .. ", ch, ch->devices);
ata_reset(ch);
+ printf (" ndev=%x ", ch->devices);
if ((misdev = devices & ~ch->devices)) {
if (misdev)
Index: atapi-all.c
===================================================================
RCS file: /home/ncvs/src/sys/dev/ata/atapi-all.c,v
retrieving revision 1.46.2.18
diff -u -r1.46.2.18 atapi-all.c
--- atapi-all.c 31 Oct 2002 23:10:33 -0000 1.46.2.18
+++ atapi-all.c 18 Nov 2002 17:08:09 -0000
@@ -232,6 +232,10 @@
void
atapi_start(struct ata_device *atadev)
{
+ if (atadev->param == NULL) {
+ ata_printf(atadev->channel, atadev->unit, "null ATA params!\n");
+ return;
+ }
switch (atadev->param->type) {
#if NATAPICD > 0
case ATAPI_TYPE_CDROM:
Thanks,
Thomas.
--
Thomas.Quinot@Cuivre.FR.EU.ORG
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20021118171053.GA82889>
