SLUB and maximum PAGE_SIZE

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Let's say I set my PAGE_SIZE to be a massive 1MB.  This is a huge page
size, so it seems to make sense to have the min order for SLUB be 0.

While booting, the kernel sets up the kmalloc caches for, say, the 8
byte size type.

When it hits slab_order:

http://lxr.linux.no/linux+v2.6.34.1/mm/slub.c#L1958

It finds that the minimum page order can hold more than
MAX_OBJS_PER_PAGE, so it then requests the order of the page that
holds the max objects.

In our case, it turns out to be 0 still, so it subtracts 1 from that,
returns a -1, and the allocation fails and the kernel panics.

Should this really be an error, or should it just return 0 in this
case?  Is there some other option or tuning that I'm overlooking to
make this ridiculous page size work?


Thanks!

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx
Please read the FAQ at http://kernelnewbies.org/FAQ



[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux