Messages in this thread | | | Date | Wed, 23 May 2007 14:58:41 +0200 | From | Jörn Engel <> | Subject | Re: Review status (Re: [PATCH] LogFS take three) |
| |
On Sun, 20 May 2007 21:30:52 +0400, Evgeniy Polyakov wrote: > > In that case segment size must be more than 32 bits, or below > transformation will not be correct?
Must it? If segment size is just 20bit then the filesystem may only be 52bit. Or 51bit when using signed values.
> segsize is long, but should be u64 I think.
It could be s32 as well.
> static void fixup_from_wbuf(struct super_block *sb, struct logfs_area > *area, void *read, u64 ofs, size_t readlen) > > u32 read_start = ofs & (super->s_segsize - 1); > u32 read_end = read_start + readlen; > > And this can overflow, since readlen is size_t.
Theoretically yes. Practically readlen is bounded to sb->blocksize plus one header. I'll start worrying about that when blocksize approaches 32bit limit.
> > If anyone can find similar bugs, the bounty is a beer or non-alcoholic > > beverage of choice. :) > > Stop kiling your kidneys, your health and promote such antisocial style > of life, start drinking vodka instead.
I'm just a German. Forgive me if I drink lesser beverages.
Jörn
-- Eighty percent of success is showing up. -- Woody Allen - 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/
| |