RE: move hyperv CHANNELMSG_UNLOAD from crashed kernel to kdump kernel
From: KY Srinivasan
Date: Wed Dec 07 2016 - 10:04:35 EST
> -----Original Message-----
> From: Olaf Hering [mailto:olaf@xxxxxxxxx]
> Sent: Wednesday, December 7, 2016 12:51 AM
> To: KY Srinivasan <kys@xxxxxxxxxxxxx>; vkuznets@xxxxxxxxxx
> Cc: gregkh@xxxxxxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx;
> devel@xxxxxxxxxxxxxxxxxxxxxx
> Subject: move hyperv CHANNELMSG_UNLOAD from crashed kernel to
> kdump kernel
>
> KY,
>
> if a hyperv VM crashes alot of work must be done to prepare the
> environment for the kdump kernel. This approach is different compared to
> all the other VM types, or baremetal. Since the just crashed kernel is
> per definition unreliable all that work should be done within the kdump
> kernel because I think a reliable environment exists only there.
>
> Was it ever considered to do the CHANNELMSG_UNLOAD /
> CHANNELMSG_UNLOAD_RESPONSE work during boot, instead of doing it
> before
> starting the kexec/kdump kernel?
>
> What would it take to prepare the runtime environment during boot?
> Does the newly booted kernel need any info from the previous kernel,
> something that cant be determined during boot? If yes, how can such info
> be passed from the old kernel to the new kernel?
Yes; I had played with this approach a while ago. The issue is that the host knows about a
bunch of in memory state that will be different in the kexec kernel. For instance if we did all
the cleanup as part of the boot sequence, we will need access to all the interrupt/messaging
infrastructure that was set up in the previous kernel.
K. Y
>
> Olaf