Re: Strange reboot behaviour (was Re: [patch] SMP fixes 2.2.1)

Matti Aarnio (matti.aarnio@sonera.fi)
Tue, 2 Feb 1999 14:06:55 +0200 (EET)


"Eloy A. Paris" <eparis@ven.ra.rockwell.com> wrote:
> eparis@ven.ra.rockwell.com said:
> > I was having the same problem as you describe. It turned out to be
> > the Ethernet adapter that was using DMA and continued to transfer
> > packets from the wire to memory after a system reboot.
...
> This is not the correct answer. It only catches the case where network cards
> do this. There are lots of other devices which use DMA.
>
> A more sensible answer would be to have the card driver register a
> reboot_notifier function, which disables the card just before reboot.

Or a more generic 'notifier' facility by which the kernel
could issue more than one kind of command:

o "save state of everything into memory for latter resurrection"
[for saving system state to disk, and restoring it from there]
o "disable everything" [for the average shutdown/halt/reboot use,
"but don't mess the saved state!"]
o "resurrect from saved state"

The driver of the save device must not be disabled before it is
safe thing to do, and it may need some more radical approach to
restart too.

> Is it possible to disable all DMA at the chipset level before
> rebooting, or do we have to tell the cards directly?

PCI-cards must be disabled individually -- especially those that can do
BUS-master cycles.

> ---- ---- ----
> David Woodhouse David.Woodhouse@mvhi.com Office: (+44) 1223 810302

/Matti Aarnio <matti.aarnio@sonera.fi>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/