[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <482947C3.9040601@oracle.com>
Date: Tue, 13 May 2008 15:48:19 +0800
From: Tiger Yang <tiger.yang@...cle.com>
To: Eric Sandeen <sandeen@...hat.com>
CC: linux-ext4@...r.kernel.org, linux-fsdevel@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] ext3/4: fix uninitialized bs in ext3/4_xattr_set_handle()
Hi, Eric,
I don't have tesecase about this bug. I did the test manually. I use
khexedit to confirm the attributes whether in inody or block.
The problem about this bug is we want to replace an existing attribute
in ibody with big size value which larger than free space in ibody.
Because we didn't do block_find(), so the struct bs have not been
initialized. Then when we try to set attribute in block by block_set(),
we find bs->base is empty, we need alloc a new block for attributes. The
old block pointed by i_file_acl will lost with attributes in it.
Best regards,
tiger
Eric Sandeen wrote:
> Tiger Yang wrote:
>
>> Hi,
>> I met a bug when I try to replace a xattr entry in ibody with a big size
>> value. But in ibody there has no space for the new value. So it should
>> set new xattr entry in block and remove the old xattr entry in ibody.
>>
>> Best regards,
>> tiger
>>
>>
>
> Tiger, do you have a testcase handy to demonstrate this?
>
> Is the new, large out-of-inode xattr unique so that it does not match
> any existing attribute block, I assume?
>
> Thanks,
>
> -Eric
>
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists