lkml.org 
[lkml]   [2015]   [May]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3 109/110] namei: handle absolute symlinks without dropping out of RCU mode
On Mon, May 11, 2015 at 07:08:09PM +0100, Al Viro wrote:
> @@ -499,7 +499,7 @@ struct nameidata {
> struct path root;
> struct inode *inode; /* path.dentry.d_inode */
> unsigned int flags;
> - unsigned seq, m_seq;
> + unsigned seq, m_seq, root_seq;
> int last_type;
> unsigned depth;
> int total_link_count;
> @@ -780,14 +780,14 @@ static __always_inline void set_root(struct nameidata *nd)
> static __always_inline unsigned set_root_rcu(struct nameidata *nd)
> {
> struct fs_struct *fs = current->fs;
> - unsigned seq, res;
> + unsigned seq;
>
> do {
> seq = read_seqcount_begin(&fs->seq);
> nd->root = fs->root;
> - res = __read_seqcount_begin(&nd->root.dentry->d_seq);
> + nd->root_seq = __read_seqcount_begin(&nd->root.dentry->d_seq);

nd->root_seq is also needed in LOOKUP_ROOT | LOOKUP_RCU case. Fixed and
folded.


\
 
 \ /
  Last update: 2015-05-15 07:21    [W:0.357 / U:1.100 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site