Re: reverse link from bucket to keys

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Kent,

i am sorry to bother you again. i am reading the movinggc.c, i am
really interested in this piece of codes. So if i enable the copy_gc,
this piece of codes will be active. My question is after the gc_moving
confirmed the gc_moving_threshold, it began to scan the bkeys. i do
not quite understand how you fill the moving_gc_keys, do you go
through all the current btree nodes to find proper keys for migration
(the bucket.used_sectors < threshold)? or you do incremental scans?

i will be appreciated if you can explain some more about it.

Thanks,
Sheng

On Wed, Jul 10, 2013 at 11:22 AM, sheng qiu <herbert1984106@xxxxxxxxx> wrote:
> Hi Kent,
>
> just a quick question about the bkey fields. The "high" member seems
> to have some bits not used right now. from bits 37 to bits 54 seems to
> be unused, right?
> The reason i was asking is that i want to keep some additional
> information in the bkeys,  if these bits are not used i might reuse
> them without incur more storage.
>
> Thanks,
> Sheng
>
> On Tue, Jul 9, 2013 at 11:24 AM, sheng qiu <herbert1984106@xxxxxxxxx> wrote:
>> Hi Kent,
>>
>> thanks for reply. i read the document in the code. just to make sure i
>> understand correctly, the stale key nodes are produced by invalidation
>> (replacement) of the buckets they reside on, right?
>> in another word, the stale key nodes might be the recently evict out data?
>>
>> Thanks,
>> Sheng
>>
>> On Mon, Jul 8, 2013 at 5:48 PM, Kent Overstreet <kmo@xxxxxxxxxxxxx> wrote:
>>> On Mon, Jul 08, 2013 at 09:44:41AM -0400, sheng qiu wrote:
>>>> Hi Kent,
>>>>
>>>> Thanks a lot for your reply.
>>>>
>>>> Then i have a question about the bucket invalidation. when bcache
>>>> choose to replace a bucket, will the keys that reside on that bucket
>>>> still be in the btree? since you do not have information about which
>>>> keys reside on the bucket, how do you update the btree?
>>>>
>>>> i can think out two ways, one is you periodically scan the btree nodes
>>>> and delete the stale nodes, the other way is when you get a cache hit
>>>> on stale nodes, then you delete it at that moment. How bcache does
>>>> this? Can you tell me the functions involve for these operations? i am
>>>> interested in this part of codes.
>>>
>>> This is documented in the code - start here:
>>> http://evilpiepirate.org/git/linux-bcache.git/tree/drivers/md/bcache/bcache.h?h=bcache-dev
>>
>>
>>
>> --
>> Sheng Qiu
>> Texas A & M University
>> Room 332B Wisenbaker
>> email: herbert1984106@xxxxxxxxx
>> College Station, TX 77843-3259
>
>
>
> --
> Sheng Qiu
> Texas A & M University
> Room 332B Wisenbaker
> email: herbert1984106@xxxxxxxxx
> College Station, TX 77843-3259



-- 
Sheng Qiu
Texas A & M University
Room 332B Wisenbaker
email: herbert1984106@xxxxxxxxx
College Station, TX 77843-3259
--
To unsubscribe from this list: send the line "unsubscribe linux-bcache" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux ARM Kernel]     [Linux Filesystem Development]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux