From: Daniel Drake <dsd@gentoo.org>
To: Anton Altaparmakov <aia21@cam.ac.uk>
Cc: "David Gómez" <david@pleyades.net>,
"Robert Love" <rml@novell.com>,
"John McCutchan" <ttb@tentacle.dhs.org>,
Linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: Problem with inotify
Date: Sun, 03 Jul 2005 11:34:31 +0100 [thread overview]
Message-ID: <42C7BF37.9010005@gentoo.org> (raw)
In-Reply-To: <Pine.LNX.4.60.0507030053040.15398@hermes-1.csi.cam.ac.uk>
Anton Altaparmakov wrote:
> Eeek! I just reread my patch. I am a muppet! Instead of the printk (or
> in addition if you like), please try the corrected version below. The
> original version completely fails to do anything at all. It's amazing
> what the omission of a single parenthesis pair can do to your code logic.
> )-:
I reverted the patch you sent earlier
(inotify_unmount_inodes-list-iteration-fix.diff) and applied the one you
attached here (inotify_unmount_inodes-list-iteration-fix2.diff).
The good news is that the hang is gone. The bad news is that you cured the
hang by introducing an oops :(
Unable to handle kernel NULL pointer dereference at virtual address 00000024
printing eip:
c01751d9
*pde = 00000000
Oops: 0000 [#1]
PREEMPT
Modules linked in: ntfs snd_pcm_oss snd_mixer_oss snd_seq_oss
snd_seq_midi_event snd_seq snd_seq_device snd_intel8x0 snd_ac97_codec snd_pcm
snd_timer snd snd_page_alloc
CPU: 0
EIP: 0060:[<c01751d9>] Tainted: P VLI
EFLAGS: 00010283 (2.6.12-gentoo-r3)
EIP is at iput+0x19/0x90
eax: 00000000 ebx: deb82e64 ecx: deb82e64 edx: deb82e64
esi: dd01ff00 edi: deb82e64 ebp: dd01ff00 esp: df7b9eb8
ds: 007b es: 007b ss: 0068
Process umount (pid: 9201, threadinfo=df7b8000 task=dd656a60)
Stack: dd01fe20 c03feb20 df7b8000 c0182337 deb82e64 00000000 00000000 00000000
00000000 df7b8000 dd01ff08 deb82e64 dd01f0dc df7b8000 deb82e74 df7b9f08
df7b8000 c0174050 deb82e74 dffe0040 df7b9f08 df7b9f08 dda12274 deb82e00
Call Trace:
[<c0182337>] inotify_unmount_inodes+0x187/0x1e0
[<c0174050>] invalidate_inodes+0x40/0x90
[<c015f579>] generic_shutdown_super+0x59/0x140
[<c01601dd>] kill_block_super+0x2d/0x50
[<c015f40a>] deactivate_super+0x5a/0x90
[<c01773cf>] sys_umount+0x3f/0x90
[<c0157e42>] filp_close+0x52/0xa0
[<c0177437>] sys_oldumount+0x17/0x20
[<c010326b>] sysenter_past_esp+0x54/0x75
Code: ff ff 89 44 24 04 e9 47 fe ff ff 8d b4 26 00 00 00 00 53 83 ec 08 8b 5c
24 10 85 db 74 58 83 bb 24 01 00 00 20 8b 83 94 00 00 00 <8b> 40 24 74 5a 85
c0 74 07 8b 50 14 85 d2 75 47 8d 43 24 c7 44
(gdb) list *iput+0x19
0x1789 is in iput (inode.c:1131).
1126 * Consequently, iput() can sleep.
1127 */
1128 void iput(struct inode *inode)
1129 {
1130 if (inode) {
1131 struct super_operations *op = inode->i_sb->s_op;
1132
1133 BUG_ON(inode->i_state == I_CLEAR);
1134
1135 if (op && op->put_inode)
Note that this exact oops happens even when inotify has not been used, i.e. to
reproduce this oops, I can just do:
mount /mnt/ntfs ; umount /mnt/ntfs
What next? :)
Thanks,
Daniel
next prev parent reply other threads:[~2005-07-03 10:34 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-30 18:18 Problem with inotify David Gómez
2005-06-30 18:29 ` Robert Love
2005-06-30 18:38 ` David Gómez
2005-06-30 19:33 ` David Gómez
2005-06-30 20:39 ` Anton Altaparmakov
2005-06-30 20:48 ` David Gómez
2005-06-30 22:35 ` Anton Altaparmakov
2005-07-01 20:25 ` Robert Love
2005-07-02 12:54 ` David Gómez
2005-07-02 16:25 ` Robert Love
2005-07-02 9:12 ` Daniel Drake
2005-07-02 22:09 ` Anton Altaparmakov
2005-07-02 23:38 ` Daniel Drake
2005-07-03 0:08 ` Anton Altaparmakov
2005-07-03 10:34 ` Daniel Drake [this message]
2005-07-04 14:27 ` Anton Altaparmakov
2005-07-04 14:39 ` Anton Altaparmakov
2005-07-04 15:12 ` Anton Altaparmakov
2005-07-04 15:55 ` Gautam Singaraju
2005-07-04 16:00 ` Anton Altaparmakov
2005-07-04 17:57 ` Daniel Drake
2005-07-04 19:09 ` Anton Altaparmakov
2005-07-05 1:33 ` John McCutchan
2005-07-05 7:56 ` Anton Altaparmakov
2005-07-05 15:48 ` John McCutchan
2005-07-05 17:06 ` Anton Altaparmakov
2005-07-05 18:07 ` John McCutchan
2005-07-05 20:53 ` Anton Altaparmakov
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=42C7BF37.9010005@gentoo.org \
--to=dsd@gentoo.org \
--cc=aia21@cam.ac.uk \
--cc=david@pleyades.net \
--cc=linux-kernel@vger.kernel.org \
--cc=rml@novell.com \
--cc=ttb@tentacle.dhs.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.