Re: kexec reboot broken with ioatdma?

From: Simon Horman
Date: Wed Dec 16 2009 - 18:36:22 EST


On Wed, Dec 16, 2009 at 03:04:03PM -0800, Roland Dreier wrote:
>
> > from a kexec point of view I believe that the preferred option is the
> > former - shutdown the device so it can be initialised using standard paths
> > in the second kernel.
>
> OK... however I'm not suggesting a separate kexec initialization path,
> simply adding a reset of the device in the standard initialization.
> This would be fairly normal for other types of device; for example, the
> BIOS may have left a NIC in an undefined state due to network boot. Of
> course BIOS is unlikely to use an IOAT DMA engine but the principle of
> limiting assumptions about platform state still stands I think.

If its reset in a standard path, then yes that seems sensible to me.
I'm mainly concerned about avoiding something along the lines of:

if (is_booting_from_kexec)
reset_hw();

> >From a quick look, it seems tricky to get a clean shutdown of IOAT stuff
> since there doesn't seem to be a clean ordering that makes sure the
> ioatdma stuff is shutdown after everything using it.
>
> - R.
>
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/