111a9947fSrtm struct buf { 211a9947fSrtm int flags; 343572072Srtm uint dev; 4*c24ac5d7SFrans Kaashoek uint blockno; 5902b13f5Srtm struct buf *prev; // LRU cache list 6cd93074eSrtm struct buf *next; 7902b13f5Srtm struct buf *qnext; // disk queue 8*c24ac5d7SFrans Kaashoek uchar data[BSIZE]; 911a9947fSrtm }; 101ddfbbb1SFrans Kaashoek #define B_BUSY 0x1 // buffer is locked by some process 111ddfbbb1SFrans Kaashoek #define B_VALID 0x2 // buffer has been read from disk 121ddfbbb1SFrans Kaashoek #define B_DIRTY 0x4 // buffer needs to be written to disk 13d003d232Srsc 14