On Thu, Feb 01, 2018 at 07:33:49PM +0300, Andrey Ryabinin wrote: > + case MEM_OFFLINE: { > + struct vm_struct *vm; > + > + /* > + * Only hot-added memory have vm_area. Freeing shadow > + * mapped during boot would be tricky, so we'll just > + * have to keep it. > + */ > + vm = find_vm_area((void *)shadow_start); > + if (vm) > + vfree((void *)shadow_start); > + } This looks like a complicated way to spell 'is_vmalloc_addr' ...