Re: [PATCH 14/33] readahead: state based method - data structure

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

 



On Fri, May 26, 2006 at 10:05:52AM -0700, Andrew Morton wrote:
> Wu Fengguang <[email protected]> wrote:
> >
> >  #define RA_FLAG_MISS 0x01	/* a cache miss occured against this file */
> >   #define RA_FLAG_INCACHE 0x02	/* file is already in cache */
> >  +#define RA_FLAG_MMAP		(1UL<<31)	/* mmaped page access */
> >  +#define RA_FLAG_NO_LOOKAHEAD	(1UL<<30)	/* disable look-ahead */
> >  +#define RA_FLAG_EOF		(1UL<<29)	/* readahead hits EOF */
> 
> Odd.  Why not use 4, 8, 16?

Sorry, the lower 8 bits are for ra_class values in the new code. It can
cause data corruption when dynamic switching between the two logics :(

I'd like to change the flags member to explicit ones like

        struct {
                unsigned miss           :1;
                unsigned incache        :1;
                unsigned mmap           :1;
                unsigned no_lookahead   :1;
                unsigned eof            :1;
        } flags;

        unsigned class_new              :4;
        unsigned class_old              :4;

Reasonable?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux