IP Library Granted Patent US 6,895,413
Granted Patent B2
US 6,895,413 · App. 10/105,022 · Granted May 17, 2005

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

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,895,413
App. No.
10/105,022
Granted
May 17, 2005
Kind
B2
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.

Claims (35)

1. A method for checking a file system implemented by a storage operating system while the file system is available for data access, the method comprising the steps of:

suspending data access to the file system;

unmounting a volume associated with the file system;

modifying a load function in the storage operating system so that the load function performs a checking procedure before returning a requested file system structure;

mounting the volume;

resuming data access to the file system;

loading a file system structure requested by the modified load function;

determining a type of the file system structure;

performing, in response to the file system structure being a directory, a directory checking procedure;

performing, in response to the file system structure being a regular file, an inode checking procedure;

verifying a set of pointers in a buffer tree associated with the inode;

removing any cross links within any buffer tree associated with the inode;

removing all but a first pointer to any block within a buffer tree associated with the inode; and

marking the inode as being checked.

2. The method of claim 1 wherein the step of marking the inode as being checked further comprises modifying an entry in a tracking file, the tracking file stored in the file system.

3. A method for checking a file system implemented by a storage operating system while the file system is available for data access, the method comprising the steps of:

suspending data access to the file system;

unmounting a volume associated with the file system;

modifying a load function in the storage operating system so that the load function performs a checking procedure before returning a requested file system structure;

mounting the volume;

resuming data access to the file system;

loading a file system structure requested by the modified load function;

determining a type of the file system structure;

performing, in response to the file system structure being a directory, a directory checking procedure;

performing, in response to the file system structure being a regular file, an inode checking procedure;

determining if the directory links to a root directory;

determining, in response to the directory not linking to the root directory, if the directory comprises of a special directory;

linking, in response to the directory not linking to the root directory and the directory not comprising a special directory, the directory to a lost and found directory;

loading, using the modified load function, all file system objects in a layer immediately beneath the directory;

verifying a set of pointers in a buffer tree associated with the directory;

removing any cross links within any buffer tree associated with the directory;

removing all but a first pointer to any block within a buffer tree associated with the directory; and

marking the directory as being checked.

4. The method of claim 3 wherein the file system objects in a layer immediately beneath the directory comprises directories.

5. The method of claim 3 wherein the file system objects in a layer immediately beneath the directory comprises files.

Assignments (3)
CHANGE OF NAME Recorded Sep 21, 2015
From: NETWORK APPLIANCE, INC.
To: NETAPP, INC.
Reel/Frame 036610/0642 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2004
From: EDWARDS, JOHN K.
To: NETWORK APPLIANCE INC.
Reel/Frame 015830/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2002
From: EDWARDS, JOHN K.
To: NETWORK APPLIANCE, INC.
Reel/Frame 013004/0769 →