US7734597B2

System and method performing an on-line check of a file system

Summary by NHIP

Online File System Check

The system modifies file system function calls to validate inodes and buffer trees while accepting read or write requests. It suspends returning results until checks complete, determining validity based on file inode pointer checks or directory tree traversal to a root.

Claim Score by NHIP

Read claim 13, the broadest

Abstract

A system and method for performing an on-line check of a file system modifies various function calls within a file system layer of a storage operating system so that each time the particular inode is retrieved using the modified function calls, a check is performed on the inode and associated buffer trees before returning the requested inode to the calling process.

US7734597B2, drawing sheet 1
Sheet 1 of 12

Term

Term ended

Expired 18 June 2023, 3.3 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

25 claims: 3 independent, 22 dependent

  1. 1
    A method for operating a storage system on a server, comprising:initiating, at the server comprising a processor and a memory, a file system checking process with respect to a portion of a file system;accepting data access requests at the server during the file system checking process, wherein the data access requests are read or write requests;suspending, by the server, return of data access request results until the file system checking process has been performed with respect to the portion of the file system being checked, whereby the file system remains available for use during the file system checking process;determining the portion of the file system to be checked based on file system structures identified by the data access requests, wherein the portion of the file system to be checked is a directory or a file;determining whether the identified requested file system structure is a file inode or a directory inode;in response to determining the identified requested file system structure is the file inode, determining that a number of buffer trees in the file system associated with the file inode have valid pointers;in response to determining the identified requested file system structure is the directory inode, determining that a directory tree can be traversed from the directory associated with the directory inode upwards to a root directory;and in response to completing the file system checking process, returning the data access requests results.
  2. 12
    A computer readable storage medium containing executable program instructions executed by a processor, comprising:program instructions that initiate, at a server comprising a processor and a memory, a file system checking process with respect to a portion of a file system;program instructions that accept data access requests at the server during the file system checking process, wherein the data access requests are read or write requests;program instructions that suspend, by the server, return of data access request results until the file system checking process has been performed with respect to the portion of the file system being checked, whereby the file system remains available for use during the file system checking process;program instructions that determine the portion of the file system to be checked based on file system structures identified by the data access requests, wherein the portion of the file system to be checked is a directory of a file;program instructions that determine whether the identified requested file system structure is a file mode or a directory inode;program instructions that determine that a number of buffer trees in the file system associated with the file mode have valid pointers in response to the identified requested file system structure being the file inode;program instructions that determine that a directory tree can be traversed from the directory associated with the directory mode upwards to a root directory in response to the identified requested file system structure being the directory inode;and program instructions that return the data access request results in response to completing the file system checking process.
  3. 13
    Broadest claimClaim Score 38, average(NHIP)A storage system comprising:a file system;and a network adapter configured to receive data access requests during a file system checking process, wherein the data access requests are received by the network adapter while the file system is undergoing the file system checking process and the data access requests are read or write requests;a processor configured to, initiate the file system checking process with respect to a portion of the file system, suspend return of data access request results until the file system checking process has been performed with respect to the portion of the file system being checked, whereby the file system checking process is performed such that the file system remains available for use by other clients during the file system checking process, determine whether the identified requested file system structure is a file inode or a directory inode;in response the identified requested file system structure being the file inode, determine that a number of buffer trees in the file system associated with the file mode have valid pointers, in response to the identified requested file system structure being the directory inode, determine that a directory tree can be traversed from the directory associated with the directory mode upwards to a root directory;and return the data access request results in response to completing the file system checking process to the client.