Re: [PATCH] cache last free vmap_area to avoid restarting beginning

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Steven Whitehouse
Date: Wednesday, May 19, 2010 - 6:54 am

Hi,

On Thu, 2010-05-06 at 02:16 +1000, Nick Piggin wrote:

At last some further info on the failed boot during testing. The
messages look like this:

dracut: Starting plymouth daemon
G------------[ cut here ]------------
kernel BUG at mm/vmalloc.c:391!
invalid opcode: 0000 [#1] SMP 
last sysfs file: /sys/devices/virtual/vtconsole/vtcon0/uevent
CPU 7 
Modules linked in:
Pid: 193, comm: modprobe Tainted: G        W  2.6.32-23.el6.bz583026.patches2.3.7.x86_64 #1 ProLiant DL580 G3
RIP: 0010:[<ffffffff8113c161>]  [<ffffffff8113c161>] alloc_vmap_area+0x431/0x440
RSP: 0018:ffff8803dae3bcf8  EFLAGS: 00010287
RAX: ffffc9001232e000 RBX: 0000000000004000 RCX: 0000000000000000
RDX: ffffffffa0000000 RSI: ffff8803db66fdc0 RDI: ffffffff81b6d0a0
RBP: ffff8803dae3bd88 R08: 000000000000000a R09: 00000000000000d0
R10: ffff8803db6b6e40 R11: 0000000000000040 R12: 0000000000000001
R13: ffffffffff000000 R14: ffffffffffffffff R15: ffffffffa0000000
FS:  00007f5872189700(0000) GS:ffff88002c2e0000(0000) knlGS:0000000000000000

and the code around that point is:

static struct vmap_area *alloc_vmap_area(unsigned long size,
                                unsigned long align,
                                unsigned long vstart, unsigned long vend,
                                int node, gfp_t gfp_mask)
{

...

                if (!first)
                        goto found;

                if (first->va_start < addr) {
391>                    BUG_ON(first->va_end < addr);
                        n = rb_next(&first->rb_node);
                        addr = ALIGN(first->va_end + PAGE_SIZE, align);
                        if (n)
                                first = rb_entry(n, struct vmap_area, rb_node);
                        else
                                goto found;
                }


so that seems to pinpoint the line on which the problem occurred. Let us
know if you'd like us to do some more testing. I think we have the
console access issue fixed now. Many thanks for all you help in this
so far,

Steve.




--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
vmalloc performance, Steven Whitehouse, (Mon Apr 12, 9:27 am)
Re: vmalloc performance, Steven Whitehouse, (Wed Apr 14, 5:49 am)
Re: vmalloc performance, Steven Whitehouse, (Wed Apr 14, 7:24 am)
Re: vmalloc performance, Minchan Kim, (Wed Apr 14, 8:12 am)
Re: vmalloc performance, Minchan Kim, (Wed Apr 14, 8:13 am)
Re: vmalloc performance, Minchan Kim, (Wed Apr 14, 9:35 am)
Re: vmalloc performance, Steven Whitehouse, (Thu Apr 15, 1:33 am)
Re: vmalloc performance, Minchan Kim, (Thu Apr 15, 9:51 am)
Re: vmalloc performance, Nick Piggin, (Thu Apr 15, 11:12 pm)
Re: vmalloc performance, Minchan Kim, (Fri Apr 16, 12:20 am)
Re: vmalloc performance, Steven Whitehouse, (Fri Apr 16, 1:50 am)
Re: vmalloc performance, Steven Whitehouse, (Fri Apr 16, 7:10 am)
Re: vmalloc performance, Minchan Kim, (Sun Apr 18, 8:14 am)
Re: vmalloc performance, Steven Whitehouse, (Mon Apr 19, 5:58 am)
Re: vmalloc performance, Nick Piggin, (Mon Apr 19, 6:38 am)
Re: vmalloc performance, Minchan Kim, (Mon Apr 19, 7:09 am)
Re: vmalloc performance, Minchan Kim, (Mon Apr 19, 7:12 am)
Re: vmalloc performance, Steven Whitehouse, (Thu Apr 29, 6:43 am)
Re: [PATCH] cache last free vmap_area to avoid restarting ..., Steven Whitehouse, (Wed May 5, 5:48 am)
Re: [PATCH] cache last free vmap_area to avoid restarting ..., Steven Whitehouse, (Mon May 17, 5:42 am)
Re: [PATCH] cache last free vmap_area to avoid restarting ..., Steven Whitehouse, (Tue May 18, 6:44 am)
Re: [PATCH] cache last free vmap_area to avoid restarting ..., Steven Whitehouse, (Wed May 19, 6:54 am)
Re: [PATCH] cache last free vmap_area to avoid restarting ..., Steven Whitehouse, (Tue May 25, 8:48 am)