Re: [PATCH 1/3] ufs: ufs_trunc_indirect: infinite cycle

From: Evgeniy Dushistov
Date: Sun May 14 2006 - 07:44:26 EST


On Sun, May 14, 2006 at 02:47:52AM -0700, Andrew Morton wrote:
> Evgeniy Dushistov <dushistov@xxxxxxx> wrote:
> >
> > The situation the same: in ufs_trunc_(not direct),
> > we read block,
> > check if count of links to it is equal to one,
> > if so we finish cycle, if not continue.
> > Because of "count of links" always >=2 this operation cause
> > infinite cycle and hang up the kernel.
>
> okay, but do we know what that code which you removed was actually intended
> to do?
>
I suppose it wait untill all range of buffers, which used by
"inode" will be freed. "vmtruncate" should care about
this.

> Do you know whether 2.4 kernels exhibit the same bug?
I suppose 2.4 doesn't affected, because of "sb_get_hash_table"
(analog of sb_find_get_block in 2.6) use "get_bh" only once,
so b_count equal to 1 if nobody used it.


--
/Evgeniy

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/