kdump: No udev events for memory hotplug?
xiyou.wangcong at gmail.com
Thu Oct 27 03:45:44 EDT 2011
On Thu, Oct 27, 2011 at 12:08 AM, Michael Holzheu
<holzheu at linux.vnet.ibm.com> wrote:
> Hello Vivek and Eric,
> I noticed that on my system kernel 3.1 *no* udev events for memory
> hotplug are generated. Same on my RHEL6.1.
> # udevadm monitor
> # echo offline > /sys/devices/system/memory/memory4/state
> -> No event
> But we need the udev events in order to do a kdump reload for setting up
> the ELF loads correctly.
> In my /etc/udev/rules.d/98-kexec.rules there are rules for memory
> SUBSYSTEM=="memory", ACTION=="add", PROGRAM="/etc/init.d/kdump restart"
> SUBSYSTEM=="memory", ACTION=="remove", PROGRAM="/etc/init.d/kdump
> Perhaps/probably I am missing something?
As Heiko pointed out, probably the memory-hotplug subsystem doesn't implement
uevent, this is why you can't get uevent when you hot-remove the memory.
For kdump, the memory is reserved by "crashkernel=", it is determined during
boot (but you can shrink it after boot), so it is not aware of memory hotplug.
IOW, if you hot-remove the memory where the crash kernel stays, the
will fail. But yes, restarting kdump can rebuild the memmap and ELF headers.
More information about the kexec