Re: [SLUB 2/2] i386 arch page size slab fixes



On Sat, 31 Mar 2007 11:31:07 -0800 (PST) Christoph Lameter <clameter@xxxxxxx> wrote:

Fixup i386 arch for SLUB support

i386 arch code currently uses the page struct of slabs for various purposes.
This interferes with slub and so SLUB has been disabled for i386 by setting
ARCH_USES_SLAB_PAGE_STRUCT.

This patch removes the use of page sized slabs for maintaining pgds and pmds.

Patch by William Irwin with only very minor modifications by me which are

1. Removal of HIGHMEM64G slab caches. It seems that virtualization hosts
require a a full pgd page.

2. Add missing virtualization hook. Seems that we need a new way
of serializing paravirt_alloc(). It may need to do its own serialization.

3. Remove ARCH_USES_SLAB_PAGE_STRUCT

Note that this makes things work without debugging on.
The arch still fails to boot properly if full SLUB debugging is on with
a cryptic message:

CPU: AMD Athlon(tm) 64 Processor 3000+ stepping 00
Checking 'hlt' instruction... OK.
ACPI: Core revision 20070126
ACPI: setting ELCR to 0200 (from 1ca0)
BUG: at kernel/sched.c:3417 sub_preempt_count()
[<c0342d43>] _spin_unlock_irq+0x13/0x30
[<c01160e6>] schedule_tail+0x36/0xd0
[<c0102df8>] __switch_to+0x28/0x180
[<c0103f9a>] ret_from_fork+0x6/0x1c
[<c012acf0>] kthread+0x0/0xe0

This all has the potential to make my inbox hurt.

Can we disable SLUB on i386 in Kconfig until it gets sorted out?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • [SLUB 2/2] i386 arch page size slab fixes
    ... i386 arch code currently uses the page struct of slabs for various purposes. ... This interferes with slub and so SLUB has been disabled for i386 by setting ... This patch removes the use of page sized slabs for maintaining pgds and pmds. ... pmd_t *pmd; ...
    (Linux-Kernel)
  • Re: + fix-spellings-of-slab-allocator-section-in-init-kconfig.patch
    ... The problem here is that you trade off more objects (SLUB) against more ... flexibility. ... estimate that we will have a need for about 30 active slabs (note the ... likely still be better off with SLUB than SLOB. ...
    (Linux-Kernel)
  • Re: [PATCH] procfs: provide slubs /proc/slabinfo
    ... Except SLOB's emulation of slabs is so thin, ... We have a very small struct kmem_cache, ... SLUB that is acceptably close to the memory efficiency of SLOB? ... hence work towards unifying all the 3 allocators into SLUB in essence) ...
    (Linux-Kernel)
  • Re: Major regression on hackbench with SLUB (more numbers)
    ... slabs) SLUB can win against SLAB: ... about it in the last 8 days: upstream still regresses, ... regresses and there are no patches posted for testing. ...
    (Linux-Kernel)