From: Russell Leighton <russ@elegant-software.com>
To: Linux Kernel list <linux-kernel@vger.kernel.org>
Subject: BUG: soft lockup detected on CPU + cifs_getattr
Date: Sun, 17 Sep 2006 18:13:57 -0400 [thread overview]
Message-ID: <450DC8A5.80703@elegant-software.com> (raw)
For the last few months we have had "hangs" where the machine
will respond to pings , but nothing else. After upgrading the kernel
we now get a useful message when it hangs, so I thought that
with the message and an example program perhaps someone can track this down.
The nature of the issue is with a program that execs many processes
quickly in succession on an SMP machine and these processes read the
some of the same
files over a CIFS share. At random times the machine hangs under this load.
I created a shell script (below) that does a similar thing and can
reliably cause the
machine to hang.
We are running:
Linux prodeng2 2.6.17-1.2142_FC4smp #1 SMP Tue Jul 11 22:57:02 EDT
2006 i686 i686 i386 GNU/Linux
we get the following error:
Sep 16 00:04:30 prodeng2 kernel: BUG: soft lockup detected on CPU#2!
Sep 16 00:04:30 prodeng2 kernel: <c0447823> softlockup_tick+0x9f/0xb2 <c042b497> update_process_times+0x39/0x5c
Sep 16 00:04:30 prodeng2 kernel: <c041737d> smp_apic_timer_interrupt+0x54/0x5a <c0404800> apic_timer_interrupt+0x1c/0x24
Sep 16 00:04:30 prodeng2 kernel: <c046eed9> generic_fillattr+0x71/0x9f <f8ff18db> cifs_getattr+0x1e/0x27 [cifs]
Sep 16 00:04:30 prodeng2 kernel: <f8ff18bd> cifs_getattr+0x0/0x27 [cifs] <c046ef45> vfs_getattr+0x3e/0x97
Sep 16 00:04:30 prodeng2 kernel: <c046f051> vfs_fstat+0x22/0x31 <c046f724> sys_fstat64+0xf/0x23
Sep 16 00:04:30 prodeng2 kernel: <c0403d2f> syscall_call+0x7/0xb
Sep 16 00:04:30 prodeng2 kernel: BUG: soft lockup detected on CPU#1!
Sep 16 00:04:30 prodeng2 kernel: <c0447823> softlockup_tick+0x9f/0xb2 <c042b497> update_process_times+0x39/0x5c
Sep 16 00:04:30 prodeng2 kernel: <c041737d> smp_apic_timer_interrupt+0x54/0x5a <c0404800> apic_timer_interrupt+0x1c/0x24
Sep 16 00:04:30 prodeng2 kernel: <c046eecd> generic_fillattr+0x65/0x9f <f8ff18db> cifs_getattr+0x1e/0x27 [cifs]
Sep 16 00:04:30 prodeng2 kernel: <f8ff18bd> cifs_getattr+0x0/0x27 [cifs] <c046ef45> vfs_getattr+0x3e/0x97
Sep 16 00:04:30 prodeng2 kernel: <c046f051> vfs_fstat+0x22/0x31 <c046f724> sys_fstat64+0xf/0x23
Sep 16 00:04:30 prodeng2 kernel: <c0403d2f> syscall_call+0x7/0xb
...after googling a little, the closest similar report I find is:
http://blog.gmane.org/gmane.comp.emulators.xen.devel/day=20060916
To tickle this bug do:
1. Create a CIFS share, ideally on a real Windows server since that
is the current context of the issue I am reporting
2. Run this shell script using a path to a file on the share:
file_on_cifs_mnt=$1
while true
do
# limited fork bomb...repeat until hang
c=1;
while [ $c -lt 10000 ]
do
# cif mounted file will cause hang
(cat $file_on_cifs_mnt > /dev/null ; ) &
# local file won't hang me
# (cat /etc/passwd > /dev/null ; ) &
let c=c+1
done
wait
done
NOTE: sometimes it would hang immediately, sometimes after a time,
sometimes I had to run 2 instances of the script concurrently to get the
BUG.
If anyone has a fix OR a work around I would very much appreciate the help.
Thx.
Russ
reply other threads:[~2006-09-17 22:01 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=450DC8A5.80703@elegant-software.com \
--to=russ@elegant-software.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox