WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

Re: [Xen-devel] kernel BUG at mm/swapfile.c:2524

To: "Christopher S. Aker" <caker@xxxxxxxxxxxx>
Subject: Re: [Xen-devel] kernel BUG at mm/swapfile.c:2524
From: Konrad Rzeszutek Wilk <konrad.wilk@xxxxxxxxxx>
Date: Thu, 21 Apr 2011 11:14:53 -0400
Cc: xen-devel@xxxxxxxxxxxxxxxxxxx, Peter Sandin <psandin@xxxxxxxxxx>
Delivery-date: Thu, 21 Apr 2011 08:16:02 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4DB045F6.9080301@xxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <FEE62514-E221-4DDA-8E28-D0579AB582B8@xxxxxxxxxx> <20110407135009.GA7258@xxxxxxxxxxxx> <3FC940A3-FD29-40E9-8F09-E43D77B6E6F2@xxxxxxxxxx> <4DB045F6.9080301@xxxxxxxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.20 (2009-06-14)
On Thu, Apr 21, 2011 at 10:57:58AM -0400, Christopher S. Aker wrote:
> We're still getting reports of this occurring with 2.6.38 domU.

Darn. I was hoping it would have just disappeared on its own :-)

> Here's a fresh one:
> 
> ------------[ cut here ]------------
> kernel BUG at mm/swapfile.c:2524!
> invalid opcode: 0000 [#1] SMP
> last sysfs file: /sys/kernel/uevent_seqnum
> Modules linked in:
> 
> Pid: 12589, comm: apache2 Not tainted 2.6.38-linode31 #1
> EIP: 0061:[<c01a36b6>] EFLAGS: 00210246 CPU: 0
> EIP is at swap_count_continued+0x176/0x180
> EAX: f57ba6c3 EBX: ed3af500 ECX: f57ba000 EDX: 00000000
> ESI: ed3c5280 EDI: 00000080 EBP: 000006c3 ESP: d4bcde30
>  DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0069
> Process apache2 (pid: 12589, ti=d4bcc000 task=ec9c17d0 task.ti=d4bcc000)
> Stack:
>  ec03c4c0 000166c3 00000000 00000000 c01a37b1 b7d63000 ec03c4c0 000166c3
>  00000000 c01a5b67 b7d63000 b7e00000 eae67b18 c0196296 6bb30067 80000006
>  c01039c6 0000000c 00000000 00000000 002cd860 0006c92f d0374df0 d17b3040
> Call Trace:
>  [<c01a37b1>] ? swap_entry_free+0xf1/0x120
>  [<c01a5b67>] ? free_swap_and_cache+0x27/0xd0
>  [<c0196296>] ? unmap_vmas+0x3d6/0x820
>  [<c01039c6>] ? __raw_callee_save_xen_make_pte+0x6/0x8
>  [<c019a7d1>] ? exit_mmap+0x91/0x140
>  [<c0130ceb>] ? mmput+0x2b/0xc0
>  [<c0134697>] ? exit_mm+0xe7/0x120
>  [<c063f390>] ? _raw_spin_lock_irq+0x10/0x20
>  [<c013614a>] ? do_exit+0x10a/0x6e0
>  [<c013675c>] ? do_group_exit+0x3c/0xa0
>  [<c01367d1>] ? sys_exit_group+0x11/0x20
>  [<c063f761>] ? syscall_call+0x7/0xb
>  [<c0630000>] ? sctp_sockaddr_af+0x20/0x90
> Code: ff 89 d8 e8 cd f7 f7 ff 01 e8 8d 76 00 c6 00 00 ba 01 00 00 00
> eb b2 89 f8 3c 80 0f 94 c0 e9 b9 fe ff ff 0f 0b e
> b fe 0f 0b eb fe <0f> 0b eb fe 0f 0b eb fe 66 90 83 ec 10 89 1c 24
> 89 c3 89 74 24
> EIP: [<c01a36b6>] swap_count_continued+0x176/0x180 SS:ESP 0069:d4bcde30
> ---[ end trace f3fdefcfb4d8b5dc ]---
> Fixing recursive fault but reboot is needed!
> BUG: scheduling while atomic: apache2/12589/0x00000001
> Modules linked in:
> Pid: 12589, comm: apache2 Tainted: G      D     2.6.38-linode31 #1

Aaah, so another HTTP server.

How can I reproduce this?
> Call Trace:
> 
>  [<c063d979>] ? schedule+0x6a9/0x8b0
>  [<c010630b>] ? xen_restore_fl_direct_end+0x0/0x1
>  [<c063f3b1>] ? _raw_spin_unlock_irqrestore+0x11/0x20
>  [<c0133323>] ? console_unlock+0x1c3/0x200
>  [<c013374f>] ? vprintk+0x17f/0x3c0
>  [<c01365ff>] ? do_exit+0x5bf/0x6e0
>  [<c063f367>] ? _raw_spin_lock_irqsave+0x27/0x40
>  [<c063f3b1>] ? _raw_spin_unlock_irqrestore+0x11/0x20
>  [<c0132e96>] ? kmsg_dump+0x36/0xf0
>  [<c0109a90>] ? do_invalid_op+0x0/0x90
>  [<c0109a90>] ? do_invalid_op+0x0/0x90
>  [<c010bea1>] ? oops_end+0x71/0xa0
>  [<c0109b0f>] ? do_invalid_op+0x7f/0x90
>  [<c01a36b6>] ? swap_count_continued+0x176/0x180
>  [<c016d805>] ? handle_IRQ_event+0x55/0xc0
>  [<c0105b37>] ? xen_force_evtchn_callback+0x17/0x30
>  [<c0138090>] ? __do_softirq+0x0/0x130
>  [<c0106314>] ? check_events+0x8/0xc
>  [<c010630b>] ? xen_restore_fl_direct_end+0x0/0x1
>  [<c010af92>] ? do_softirq+0x42/0xb0
>  [<c063fcd6>] ? error_code+0x5a/0x60
>  [<c012007b>] ? __change_page_attr_set_clr+0xa2b/0xb40
>  [<c0109a90>] ? do_invalid_op+0x0/0x90
>  [<c01a36b6>] ? swap_count_continued+0x176/0x180
>  [<c01a37b1>] ? swap_entry_free+0xf1/0x120
>  [<c01a5b67>] ? free_swap_and_cache+0x27/0xd0

So back to unmap_vmas. I wonder if we are missing the lazy_unmap flag
in 2.6.38.

>  [<c0196296>] ? unmap_vmas+0x3d6/0x820
>  [<c01039c6>] ? __raw_callee_save_xen_make_pte+0x6/0x8
>  [<c019a7d1>] ? exit_mmap+0x91/0x140
>  [<c0130ceb>] ? mmput+0x2b/0xc0
>  [<c0134697>] ? exit_mm+0xe7/0x120
>  [<c063f390>] ? _raw_spin_lock_irq+0x10/0x20
>  [<c013614a>] ? do_exit+0x10a/0x6e0
>  [<c013675c>] ? do_group_exit+0x3c/0xa0
>  [<c01367d1>] ? sys_exit_group+0x11/0x20
>  [<c063f761>] ? syscall_call+0x7/0xb
>  [<c0630000>] ? sctp_sockaddr_af+0x20/0x90
> 
> -Chris
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxxxxxxxx
> http://lists.xensource.com/xen-devel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel