lkml.org 
[lkml]   [2006]   [Jun]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC][PATCH 03/20] Add vfsmount writer count
On Fri, Jun 16, 2006 at 04:12:15PM -0700, Dave Hansen wrote:
> +/*
> + * Must be called under write lock on mnt->mnt_sb->s_umount,
> + * this prevents concurrent decrements which could make the
> + * value -1, and test in mnt_want_write() wrongly succeed
> + */
> +static inline int mnt_make_readonly(struct vfsmount *mnt)
> +{
> + if (!atomic_dec_and_test(&mnt->mnt_writers)) {
> + atomic_inc(&mnt->mnt_writers);
> + return -EBUSY;
> + }
> + return 0;
> +}

Check in faccessat() could get screwed by that, if you just lose the
race with final writer going away. Then mnt_make_readonly() will
fail (as it should) and access(2) give -EROFS.
-
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/

\
 
 \ /
  Last update: 2006-06-18 20:35    [from the cache]
©2003-2011 Jasper Spaans