Patent ID: 7730090

Claim:
A method of performing file system checking on a file system comprising a plurality of blocks includes the steps of: obtaining and maintaining a snapshot block bitmap including a bit for each block in the file system, the bit indicating an ownership state of the block at a point in time associated with a snapshot of the file system; obtaining and maintaining a File System ChecKing (FSCK) block bitmap including a bit for each block in the file system, the bit indicating an ownership state of the block as viewed by a FSCK process; obtaining and maintaining a File System (FS) block bitmap including a bit for each block in the file system, the bit indicating an ownership state of the block as viewed by the file system; and responsive to an access request for a file in the file system, examining bits associated with blocks of the file in each of the snapshot block bitmaps, FSCK block bitmaps and FS bitmaps to determine whether to allow the access to the file; wherein the step of examining bits associated with the block in the file in each of the snapshot block bitmaps, FSCK block bitmaps and FS bitmaps includes the steps of concatenating a snapshot bit, FSCK bit, and FS bit to provide a state and performing an operation in response to the state.