xfs
[Top] [All Lists]

Re: [PATCH] xfs: improve xfs_bitmap_empty()

To: Mark Tinguely <tinguely@xxxxxxx>
Subject: Re: [PATCH] xfs: improve xfs_bitmap_empty()
From: Jeff Liu <jeff.liu@xxxxxxxxxx>
Date: Sat, 01 Feb 2014 11:48:48 +0800
Cc: Eric Sandeen <sandeen@xxxxxxxxxxx>, "xfs@xxxxxxxxxxx" <xfs@xxxxxxxxxxx>
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <52EBCF12.1020403@xxxxxxx>
References: <52EBAF91.10608@xxxxxxxxxx> <52EBBC3D.5030507@xxxxxxxxxxx> <52EBC103.5050006@xxxxxxxxxx> <52EBC1AF.6020000@xxxxxxxxxxx> <52EBC67B.7020806@xxxxxxxxxx> <52EBCF12.1020403@xxxxxxx>
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.1.0
On 02/01 2014 00:28 AM, Mark Tinguely wrote:
> On 01/31/14 09:51, Jeff Liu wrote:
>>
>> On 01/31 2014 23:30 PM, Eric Sandeen wrote:
>>> On 1/31/14, 9:28 AM, Jeff Liu wrote:
>>>>
>>>> On 01/31 2014 23:07 PM, Eric Sandeen wrote:
>>>>> On 1/31/14, 8:13 AM, Jeff Liu wrote:
>>>>>> From: Jie Liu<jeff.liu@xxxxxxxxxx>
>>>>>>
>>>>>> There is no need to travel through the whole bitmap items to verify
>>>>>> if the bitmap array is empty or not, instead, just return 0 directly
>>>>>> if an item is detected in bitmap array.
>>>>>>
>>>>>> Signed-off-by: Jie Liu<jeff.liu@xxxxxxxxxx>
>>>>>
>>>>> Makes sense (and the long loop was my fault, I guess, but it's
>>>>> better than it was, see commit 24ad33f!)
>>>>
>>>> Ah, you have killed a lots code there! :)
>>>>> Reviewed-by: Eric Sandeen<sandeen@xxxxxxxxxx>
>>>>>
>>>>> I wonder if something like:
>>>>>
>>>>> return (find_first_set(map, size) == size);
>>>>>
>>>>> would be faster (or if it'd be worth it)...?
>>>>> Probably not.  :)
>>>>>
>>>>
>>>> Well, when I looking through our bitmap source, I once thought if
>>>> we can replace the current code with the generic bitmap library.
>>>> However, our map is uint rather than unsigned long...
>>>
>>> Technically the unsigned long (pointer) is just the bitmap address,
>>> I think.
>>
>> Yeah, so this might worth to try on long terms.
>>
> 
> The blf_data_map[] is int aligned, not long aligned.
> You could reflect the alignment difference in the offset or
> change the alignment in the structure.
> 

For now, I think we can not simply turn to generic bitmap just because
of the alignment difference on 64-bits OS.

Thanks,
-Jeff

<Prev in Thread] Current Thread [Next in Thread>