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

Bug#397281: BUG: warning@kernel/irq/handle.c:177/__do_IRQ()



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Package: linux-image-2.6.18-1-xen-vserver-686
Version: 2.6.18-3
Severity: minor
Tags: patch

Hi *!

When using the -xen-vserver kernel, the domU spits many errors like
this:

Nov  5 21:28:39 frontend kernel: BUG: warning at 
kernel/irq/handle.c:177/__do_IRQ()
Nov  5 21:28:39 frontend kernel:  [<c013f5ee>] __do_IRQ+0x45/0x160
Nov  5 21:28:39 frontend kernel:  [<c01060c4>] do_IRQ+0x43/0x53
Nov  5 21:28:39 frontend kernel:  [<c020ea34>] evtchn_do_upcall+0x64/0x9b
Nov  5 21:28:39 frontend kernel:  [<c01049d9>] hypervisor_callback+0x3d/0x48
Nov  5 21:28:39 frontend kernel:  [<c014a366>] page_address+0x1/0x81
Nov  5 21:28:39 frontend kernel:  [<c014c5ae>] __handle_mm_fault+0x115/0xc21
Nov  5 21:28:39 frontend kernel:  [<c0104997>] error_code+0x2b/0x30
Nov  5 21:28:39 frontend kernel:  [<c0110ba2>] do_page_fault+0x39f/0x7c8
Nov  5 21:28:39 frontend kernel:  [<c0116a81>] schedule_tail+0x80/0x85
Nov  5 21:28:39 frontend kernel:  [<c0110803>] do_page_fault+0x0/0x7c8
Nov  5 21:28:39 frontend kernel:  [<c0104997>] error_code+0x2b/0x30
Nov  5 21:28:39 frontend kernel: BUG: warning at 
kernel/irq/handle.c:177/__do_IRQ()
Nov  5 21:28:39 frontend kernel:  [<c013f5ee>] __do_IRQ+0x45/0x160
Nov  5 21:28:39 frontend kernel:  [<c01060c4>] do_IRQ+0x43/0x53
Nov  5 21:28:39 frontend kernel:  [<c020ea34>] evtchn_do_upcall+0x64/0x9b
Nov  5 21:28:39 frontend kernel:  [<c01049d9>] hypervisor_callback+0x3d/0x48


With the help of #vserver I have tracked this down to a missing
__enter/leave_vx_admin() call in irq-xen.c:

- --- orig/linux-2.6-2.6.18/debian/patches/features/all/xen/fedora-36252.patch 
2006-11-06 09:36:27.000000000 +0100
+++ 
linux-2.6-2.6.18.modified/debian/patches/features/all/xen/fedora-36252.patch	
2006-11-05 22:44:50.000000000 +0100
@@ -7210,7 +7210,7 @@
 diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/irq-xen.c 
linux-2.6.18-xen/arch/i386/kernel/irq-xen.c
 --- linux-2.6.18.1/arch/i386/kernel/irq-xen.c	1970-01-01 01:00:00.000000000 
+0100
 +++ linux-2.6.18-xen/arch/i386/kernel/irq-xen.c	2006-09-04 16:31:00.000000000 
+0200
- -@@ -0,0 +1,324 @@
+@@ -0,0 +1,328 @@
 +/*
 + *	linux/arch/i386/kernel/irq.c
 + *
@@ -7231,6 +7231,7 @@
 +#include <linux/notifier.h>
 +#include <linux/cpu.h>
 +#include <linux/delay.h>
++#include <linux/vs_context.h>
 +
 +DEFINE_PER_CPU(irq_cpustat_t, irq_stat) 
____cacheline_internodealigned_in_smp;
 +EXPORT_PER_CPU_SYMBOL(irq_stat);
@@ -7268,6 +7269,7 @@
 +{	
 +	/* high bit used in ret_from_ code */
 +	int irq = ~regs->orig_eax;
++       struct vx_info_save vxis;
 +#ifdef CONFIG_4KSTACKS
 +	union irq_ctx *curctx, *irqctx;
 +	u32 *isp;
@@ -7295,6 +7297,7 @@
 +	}
 +#endif
 +
++       __enter_vx_admin(&vxis);
 +#ifdef CONFIG_4KSTACKS
 +
 +	curctx = (union irq_ctx *) current_thread_info();
@@ -7333,6 +7336,7 @@
 +	} else
 +#endif
 +		__do_IRQ(irq, regs);
++       __leave_vx_admin(&vxis);
 +
 +	irq_exit();
 +


Using this patch i have no further BUG traces.

daniel_hozac of #vserver recommended this shell fragment to repair
missing vserver patch pieces in xen:

(23:47:36) daniel_hozac: DavidS: i usually run find . -name '*-xen.[chS]' | { 
while read FILE; do f=${FILE/./}; f=${f/-xen/}; filterdiff -i "*$f" <vserver 
patch> | patch $FILE; done }


Thank you for your time and work!

Regards, David


- -- System Information:
Debian Release: 4.0
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-1-vserver-686
Locale: LANG=C, LC_CTYPE=de_AT.UTF-8 (charmap=UTF-8)

Versions of packages linux-image-2.6.18-1-xen-vserver-686 depends on:
ii  initramfs-tools               0.85       tools for generating an initramfs
ii  linux-modules-2.6.18-1-xen-vs 2.6.18-3   Linux 2.6.18 modules on 
PPro/Celer

Versions of packages linux-image-2.6.18-1-xen-vserver-686 recommends:
ii  libc6-xen                    2.3.6.ds1-7 GNU C Library: Shared libraries 
[X

- -- no debconf information

- -- 
- - hallo... wie gehts heute?
- - *hust* gut *rotz* *keuch*
- - gott sei dank kommunizieren wir über ein septisches medium ;)
 -- Matthias Leeb, Uni f. angewandte Kunst, 2005-02-15
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)

iD8DBQFFTvun/Pp1N6Uzh0URAp9cAJ4rfdXnHcZVI4nW3ivPeHxMmTk6dgCfSyz3
rLHPqzfEMJYQWCSjL0IqfNc=
=0Sb0
-----END PGP SIGNATURE-----



Reply to: