lkml.org 
[lkml]   [2008]   [Aug]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [RFC v2][PATCH 7/9] Infrastructure for shared objects
    From
    Date
    On Thu, 2008-08-21 at 12:40 +0200, Louis Rilling wrote:
    >
    > > +struct cr_objhash {
    > > + struct cr_obj **hash;
    > > + int next_tag;
    > > +};
    > > +
    > > +#define CR_OBJHASH_NBITS 10 /* 10 bits = 1K buckets */
    > > +#define CR_OBJHASH_ORDER 0 /* 1K buckets * 4 bytes/bucket = 1
    > page */
    >
    > Only true when PAGE_SIZE == 4K and in 32bits. Perhaps like below?
    >
    > #define CR_OBJHASH_BUCKET_NBITS (BITS_PER_LONG == 64 ? 3 : 2)
    > #define CR_MIN_OBJHASH_NBITS ((PAGE_SHIFT - CR_OBJHASH_BUCKET_NBITS)
    > #define CR_OBJHASH_NBITS (CR_MIN_OBJHASH_NBITS >= 10 ?
    > CR_MIN_OBJHASH_NBITS : 10)
    > #define CR_OBJHASH_ORDER (CR_OBJHASH_NBITS + CR_OBJHASH_BUCKET_NBITS -
    > PAGE_SHIFT)

    Gah. Can't we just use the existing radix tree or hash implementations
    we already have?

    -- Dave



    \
     
     \ /
      Last update: 2008-08-26 19:03    [W:0.022 / U:36.848 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site