[lkml]   [2010]   [Oct]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCH 08/21] fs: rework icount to be a locked variable
On Thu, Oct 21, 2010 at 08:40:45PM +0100, Al Viro wrote:
> On Thu, Oct 21, 2010 at 11:49:33AM +1100, Dave Chinner wrote:
> > From: Dave Chinner <>
> >
> > The inode reference count is currently an atomic variable so that it
> > can be sampled/modified outside the inode_lock. However, the
> > inode_lock is still needed to synchronise the final reference count
> > and checks against the inode state.
> >
> > To avoid needing the protection of the inode lock, protect the inode
> > reference count with the per-inode i_lock and convert it to a normal
> > variable. To avoid existing out-of-tree code accidentally compiling
> > against the new method, rename the i_count field to i_ref. This is
> > relatively straight forward as there are limited external references
> > to the i_count field remaining.
> BTW, the same thing as with Nick's set - separate patch for "clone the
> reference to inode we are already holding" helper, in front of queue.

Isn't that already done by the patch 6 "fs: Clean up inode reference
counting"? That patch does the converting of stand-alone
atomic_inc(&inode->i-count) into iref(inode), not this one.
Maybe I've misunderstood what you are wanting to be changed with
this patch - can you clarify, Al?



Dave Chinner

 \ /
  Last update: 2010-10-22 00:35    [W:0.081 / U:1.796 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site