From: Ryan Anderson <ryan@michonline.com>
To: Alexander Nyberg <alexn@telia.com>
Cc: Andrew Morton <akpm@osdl.org>, Robert Love <rml@novell.com>,
Linux Kernel <linux-kernel@vger.kernel.org>
Subject: Re: Oops in 2.6.13-rc5-git-current (0d317fb72fe3cf0f611608cf3a3015bbe6cd2a66)
Date: Sun, 07 Aug 2005 19:24:34 -0400 [thread overview]
Message-ID: <42F69832.2030404@michonline.com> (raw)
In-Reply-To: <20050807200814.GA2464@localhost.localdomain>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Alexander Nyberg wrote:
> (akpm: a fix for this needs to go into 2.6.13, inotify + nfs
> trivially oopses otherwise, even if inotify isn't actively used)
This patch seems to have fixed it for me.
I upgraded to fdbd22dad31982b64a4e663fd056a8a7cfac9607 and applied this
patch on top of it, and I can't retrigger the oops. (It seemed rather
easy to hit on the other kernel)
So, I guess:
Seems-to-fix-it: Ryan Anderson <ryan@michoneline.com>
> It looks like the following sequence is done in the wrong order.
> When vfs_unlink() is called from sys_unlink() it has taken a ref
> on the inode and sys_unlink() does the last iput() but when called
> from other callsites vfs_unlink() might do the last iput() and
> free inode, so inotify_inode_queue_event() will receive an already
> freed object and dereference an already freed object.
>
> Signed-off-by: Alexander Nyberg <alexn@telia.com>
>
> Index: mm/fs/namei.c
> ===================================================================
> --- mm.orig/fs/namei.c 2005-08-07 12:06:16.000000000 +0200
> +++ mm/fs/namei.c 2005-08-07 18:17:20.000000000 +0200
> @@ -1869,8 +1869,8 @@
> /* We don't d_delete() NFS sillyrenamed files--they still exist. */
> if (!error && !(dentry->d_flags & DCACHE_NFSFS_RENAMED)) {
> struct inode *inode = dentry->d_inode;
> - d_delete(dentry);
> fsnotify_unlink(dentry, inode, dir);
> + d_delete(dentry);
> }
>
> return error;
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFC9pgyfhVDhkBuUKURAjbSAKCavd7s4zdk/uce1TZ0CX018RGRmgCfXWFI
XjAPhBcEoLyJDWnjk9oI+XI=
=NMc4
-----END PGP SIGNATURE-----
prev parent reply other threads:[~2005-08-07 23:24 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-08-07 3:56 Oops in 2.6.13-rc5-git-current (0d317fb72fe3cf0f611608cf3a3015bbe6cd2a66) Ryan Anderson
2005-08-07 17:08 ` Alexander Nyberg
2005-08-07 18:00 ` Ryan Anderson
2005-08-07 20:08 ` Alexander Nyberg
2005-08-07 23:24 ` Ryan Anderson [this message]
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=42F69832.2030404@michonline.com \
--to=ryan@michonline.com \
--cc=akpm@osdl.org \
--cc=alexn@telia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=rml@novell.com \
/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.