Warning from free_init_pages with large initrd

From: Sitsofe Wheeler
Date: Sat Sep 24 2016 - 12:08:38 EST


Hi,

While trying to PXE boot a Fedora LiveISO on VMware ESXi the kernel
throws the following warning:

[ 0.955216] Unpacking initramfs...
[ 5.391977] ------------[ cut here ]------------
[ 5.391986] WARNING: CPU: 0 PID: 1 at arch/x86/mm/init.c:671 free_init_pages+0x94/0xa0
[ 5.391988] Modules linked in:
[ 5.391992] CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.8.0-0.rc7.git2.1.fc26.x86_64 #1
[ 5.391993] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 09/30/2014
[ 5.391995] 0000000000000286 00000000c1677634 ffff9d943abffd58 ffffffffb6467073
[ 5.391999] 0000000000000000 0000000000000000 ffff9d943abffd98 ffffffffb60ae7ab
[ 5.392001] 0000029fb71cab9d ffff9d9300000000 ffff9d9380000000 ffff9d9329861000
[ 5.392003] Call Trace:
[ 5.392008] [<ffffffffb6467073>] dump_stack+0x86/0xc3
[ 5.392020] [<ffffffffb60ae7ab>] __warn+0xcb/0xf0
[ 5.392022] [<ffffffffb60ae8dd>] warn_slowpath_null+0x1d/0x20
[ 5.392024] [<ffffffffb606b094>] free_init_pages+0x94/0xa0
[ 5.392027] [<ffffffffb71cabe3>] ? unpack_to_rootfs+0x29d/0x29d
[ 5.392039] [<ffffffffb71c88cd>] ? set_debug_rodata+0x12/0x12
[ 5.392042] [<ffffffffb71e6aee>] free_initrd_mem+0x21/0x23
[ 5.392044] [<ffffffffb71cacc8>] populate_rootfs+0xe5/0x105
[ 5.392046] [<ffffffffb6002190>] do_one_initcall+0x50/0x180
[ 5.392048] [<ffffffffb71c88cd>] ? set_debug_rodata+0x12/0x12
[ 5.392049] [<ffffffffb71c923b>] kernel_init_freeable+0x200/0x29c
[ 5.392053] [<ffffffffb68e6b4e>] kernel_init+0xe/0x100
[ 5.392055] [<ffffffffb68f7b2f>] ret_from_fork+0x1f/0x40
[ 5.392056] [<ffffffffb68e6b40>] ? rest_init+0x140/0x140
[ 5.392062] ---[ end trace 0fbf5e487fcf7e56 ]---
[ 6.572994] Freeing initrd memory: 1416828K (ffff9d9329861000 - ffff9d9380000000)

The initrd is big because it holds all the files in the ISO (see
https://fedorahosted.org/cobbler/wiki/HowToPxeAnyLiveCd for how it was
made). The issue was originally filed on
https://bugzilla.redhat.com/show_bug.cgi?id=1274966 but was usually
against older kernels...

--
Sitsofe | http://sucs.org/~sits/