From: Steven Whitehouse <swhiteho@redhat.com>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] BUG? racy access to i_diskflags
Date: Tue, 17 Aug 2010 11:40:32 +0100 [thread overview]
Message-ID: <1282041632.2507.8.camel@localhost> (raw)
In-Reply-To: <AANLkTi=+JtX-68=40B57K7cs9_F47Skhb7PfxJn9Dmor@mail.gmail.com>
Hi,
On Tue, 2010-08-17 at 13:28 +0900, ?? shin hong wrote:
> Hi. I am reporting an issue suspected as racy
> while I read inode_go_lock() at gfs2/glops.c in Linux 2.6.35.
>
> Since I do not have much background on GFS2, I am not certain
> whether the issue is serious or not. But please examine the issue
> and let me know your opinion.
>
> It seems that inode_go_lock() accesses gfs2_inode's i_diskflags field
> without any lock held.
>
> But, as do_gfs2_set_flags() updates gfs2_inode's i_diskflags,
> concurrent executions with with inode_go_lock() might result
> race conditions.
>
> Could you examine the issue please?
>
> Sincerely
> Shin Hong
That looks ok to me. The access in inode_go_lock() occurs when the glock
on the inode has been acquired but before any process (such as might be
calling so_gfs2_set_flags() for example) will be able to access the
inode.
The flags access in inode_go_lock() is there to ensure that in the event
of a node crashing when it is part way through truncating an inode, that
the truncated blocks are not seen by any other processes after the
event. It is required because it is impossible to guarantee that a
truncation will always fit inside a single transaction,
Steve.
next parent reply other threads:[~2010-08-17 10:40 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <AANLkTi=+JtX-68=40B57K7cs9_F47Skhb7PfxJn9Dmor@mail.gmail.com>
2010-08-17 10:40 ` Steven Whitehouse [this message]
2022-06-15 8:43 ` [Cluster-devel] BUG? racy access to i_diskflags Steven Whitehouse
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=1282041632.2507.8.camel@localhost \
--to=swhiteho@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox