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.
I agree that is more robust if the init path copes with hardware
arriving in an unknown state. I'll look into adding a channel reset in
the init path (something that should probably have been there since the
beginning).
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.
The engines may be in use by multiple subsytems (net, raid) so
coordinating shutdown ordering would indeed be a pain.
--
Dan
_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec