lkml.org 
[lkml]   [2003]   [Oct]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
DateSat, 25 Oct 2003 19:42:25 +0200
FromHerbert Poetzl <>
SubjectRe: Linux 2.4 quota (accounting?) bug ...
On Sat, Oct 25, 2003 at 06:31:28PM +0200, Jan Kara wrote:
> Hi,
>
> > a friend of mine, made me aware of the following
> > imbalance, which looks like a minor accounting bug
> > to me, but might be a quota bug ...
> Sorry but the code seems correct to me - we get reference to dquot by
> get_dquot_ref() and than we put the reference by dqput(). dqput() is
> correct because something nasty might happen in the mean time and so we
> might be the last holders of the dquot. What do you think is wrong?

dqput() does dqstats.drops++;
which isn't correct if this should be the same as
put_dquot_ref(), but maybe I'm just irritated by
strange statistics on some kernels showing more
drops than lookups+allocated after sync/quotaoff

best,
Herbert

> Honza
>
> >
> > fs/dquot.c : 394 vfs_quota_sync()
> > -----------------------------------------------------
> > /* Get reference to quota so it won't be invalidated. get_dquot_ref()
> > * is enough since if dquot is locked/modified it can't be
> > * on the free list */
> >
> > > get_dquot_ref(dquot);
> > if (dquot->dq_flags & DQ_LOCKED)
> > wait_on_dquot(dquot);
> > if (dquot_dirty(dquot))
> > sb->dq_op->sync_dquot(dquot);
> > > dqput(dquot);
> > goto restart;
> > }
> >
> >
> > best,
> > Herbert
> >
> >
> --
> Jan Kara <jack@suse.cz>
> SuSE CR Labs
> -
> 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/
-
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: 2005-03-22 13:58    [from the cache]
©2003-2010