Skip to contentSkip to conversation

UML: spurious interrupt freezes guest

PATCH In review Shane Hathaway 3 participants 4 messages Jan 20, 2009 User-mode Linux (UML)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 UML: spurious interrupt freezes guest

A new instance of user mode linux that I created over the past couple of days worked pretty well except that it had a habit of freezing after a few minutes. Every time it froze, the last message on the console was either:

spurious interrupt in ubd_handler, err = 4

or:

spurious interrupt in ubd_handler, err = 0

This message is generated by arch/um/drivers/ubd_kern.c. I did not work out the cause of the spurious interrupts, but I did come up with a patch that makes the guest recover from spurious interrupts without freezing.
It appears that the interrupt handler needs to be reactivated before
every exit of ubd_handler(). The patch is below.

Shane

arch/um/drivers/ubd_kern.c +0 -0
@@ -489,6 +489,7 @@
                                break;
                        printk(KERN_ERR "spurious interrupt in

ubd_handler, "

                               "err = %d\n", -n);
+                       reactivate_fd(thread_fd, UBD_IRQ);
                        return;
                }

------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

#1 lore raw
Quoted 6 lines · Shane Hathaway

A new instance of user mode linux that I created over the past couple of days worked pretty well except that it had a habit of freezing after a few minutes. Every time it froze, the last message on the console was either:

spurious interrupt in ubd_handler, err = 4

What version and what's the workload?

Jeff

------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

#2 lore raw
Quoted 9 lines · Jeff Dike
Quoted 6 lines · Shane Hathaway

A new instance of user mode linux that I created over the past couple of days worked pretty well except that it had a habit of freezing after a few minutes. Every time it froze, the last message on the console was either:

spurious interrupt in ubd_handler, err = 4

What version and what's the workload?

I got the spurious interrupt with both Linux 2.6.28.1 and 2.6.27.12 as guests. The host runs 2.6.9-42.0.3.ELsmp.

I am putting OpenVPN and Asterisk inside the guest. The guest is based on Ubuntu 8.10. The spurious interrupt happened more often when I restricted the guest's RAM. The processes in the guest normally consume a total of about 20-24 MB of RAM. I limited the guest's RAM to 48 MB and gave it a 64 MB swap partition. When I gave the guest only 32 MB, the spurious interrupt seemed to happen more often.

The best way I found to trigger the spurious interrupt was to try to "apt-get install" many packages at once. The download would succeed, but the guest would freeze partway through the install.

Shane

#3 lore raw
Quoted 3 lines · Shane Hathaway

The best way I found to trigger the spurious interrupt was to try to "apt-get install" many packages at once. The download would succeed, but the guest would freeze partway through the install.

That makes me think, recently I did an 'apt-get dist-upgrade' on about 10 UMLs at the same time and many of them segfaulted. UMLs are 2.6.26 and host is Fedora 8 32 bits with 1 GB RAM. UMLS have their memory set at 128 MB. I figured I was pushing a bit, so I did not took notes and ended up rebooting the host to get a clean slate.

Al

------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel