| Date | Sat, 27 May 2006 15:02:48 +0800 | From | Wu Fengguang <> | Subject | Re: [PATCH 14/33] readahead: state based method - data structure |
| |
On Fri, May 26, 2006 at 10:05:52AM -0700, Andrew Morton wrote: > Wu Fengguang <wfg@mail.ustc.edu.cn> 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 majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|