Patents by Inventor Richard W. Busser
Richard W. Busser has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 7107320Abstract: A data storage system that includes first and second controllers is provided. Data is mirrored from one controller to the other controller according to different steps depending on the amount of data to be mirrored. When the data to be mirrored is less than or equal to a predetermined number of bytes, one less interrupt is generated than when the data to be mirrored is greater than the predetermined number of bits.Type: GrantFiled: November 2, 2001Date of Patent: September 12, 2006Assignee: Dot Hill Systems Corp.Inventors: Richard W. Busser, Ian R. Davies
-
Patent number: 6990611Abstract: A method is disclosed for recovering data from a RAID system after a transient failure. After a transient failure, the cause of the failure is corrected and a user initiates a trust array command. The RAID controller receives the trust array command and performs several modifications to the disk metadata. First, the partition age metadata field is synchronized. Second, the primary dead partition map metadata field is cleared. Third, the partition status metadata field is set to initialized. Following the metadata modifications, the RAID controller verifies that it can access all of the drives in the array. If all drives are accessible, the array is on-line and fault tolerant without the need for re-constructing a drive within the array, or re-creating the array. If one drive remains inaccessible, data is available from the array, and the array is in a critical state. If two or more drives remain inaccessible, the array remains off-line and a partial recovery may be attempted.Type: GrantFiled: December 29, 2000Date of Patent: January 24, 2006Assignee: Dot Hill Systems Corp.Inventor: Richard W. Busser
-
Patent number: 6925530Abstract: A storage array comprised of a number of storage drives is provided with a controller to control zero initialization of the storage drives. The zero initialization involves writing zeros to all the storage drives in the array before user data or other information is written thereto. Each storage drive has a priority associated with accessing and using a bus subsystem that provides the communication link between the array of storage drives and the controller. A number of write operations are conducted during the zero initialization process to each storage drive in the array. A first write operation is performed by each storage drive before a second write operation is performed. Substantially equal usage of the bus subsystem by all the storage drives in the array is achieved in order to fully utilize the available bandwidth of the bus subsystem and reduce the time required to complete the zero initialization.Type: GrantFiled: August 29, 2001Date of Patent: August 2, 2005Assignee: Dot Hill Systems Corp.Inventors: Richard W. Busser, Ian R. Davies
-
Patent number: 6766491Abstract: A system and method for efficient parity mirroring between controllers of an active-active controller pair in a redundant array of inexpensive disks (RAID) system is disclosed. When a second controller in an active-active controller pair receives new data to be written to a disk array, it mirrors the new data to a first controller in the active-active controller pair. The second controller then computes new parity for the data stripe associated with the new data. The second controller then opens a parity log and mirrors logical block address (LBA) information for the new data to a first controller in the active-active controller pair. In the event of a failure of the second controller after mirroring the LBA information and prior to completing the write operation, the first controller uses the LBA information to complete the write operation, assuring that the new data and new parity are properly stored on the disk array.Type: GrantFiled: May 9, 2001Date of Patent: July 20, 2004Assignee: Dot Hill Systems Corp.Inventor: Richard W. Busser
-
Patent number: 6732243Abstract: A network storage controller for transferring data between a host computer and a storage device, such as a redundant array of inexpensive disks (RAID), is disclosed. The network storage controller includes at least one channel interface module which is adapted to be connected to the host computer and storage device. The channel interface module is connected to a passive backplane, and selectively transfers data between the host computer and storage device and the passive backplane. The network storage controller also includes at least one controller management module, attached to the passive backplane. The controller management module communicates with the channel interface module via the passive backplane, and processes and temporarily stores data received from the host computer or storage device. In applications where redundancy is required, at least two controller management modules and at least two channel interface modules may be used.Type: GrantFiled: November 8, 2001Date of Patent: May 4, 2004Assignee: Chaparral Network Storage, Inc.Inventors: Richard W. Busser, Ian R. Davies
-
Publication number: 20030101228Abstract: A data storage system that includes first and second controllers is provided. Data is mirrored from one controller to the other controller according to different steps depending on the amount of data to be mirrored. When the data to be mirrored is less than or equal to a predetermined number of bytes, one less interrupt is generated than when the data to be mirrored is greater than the predetermined number of bits.Type: ApplicationFiled: November 2, 2001Publication date: May 29, 2003Inventors: Richard W. Busser, Ian R. Davies
-
Publication number: 20030088735Abstract: A network storage controller for transferring data between a host computer and a storage device, such as a redundant array of inexpensive disks (RAID), is disclosed. The network storage controller includes at least one channel interface module which is adapted to be connected to the host computer and storage device. The channel interface module is connected to a passive backplane, and selectively transfers data between the host computer and storage device and the passive backplane. The network storage controller also includes at least one controller management module, attached to the passive backplane. The controller management module communicates with the channel interface module via the passive backplane, and processes and temporarily stores data received from the host computer or storage device. In applications where redundancy is required, at least two controller management modules and at least two channel interface modules may be used.Type: ApplicationFiled: November 8, 2001Publication date: May 8, 2003Inventors: Richard W. Busser, Ian R. Davies
-
Publication number: 20030046490Abstract: A storage array comprised of a number of storage drives is provided with a controller to control zero initialization of the storage drives. The zero initialization involves writing zeros to all the storage drives in the array before user data or other information is written thereto. Each storage drive has a priority associated with accessing and using a bus subsystem that provides the communication link between the array of storage drives and the controller. A number of write operations are conducted during the zero initialization process to each storage drive in the array. A first write operation is performed by each storage drive before a second write operation is performed. Substantially equal usage ofthe bus subsystem by all the storage drives in the array is achieved in order to fully utilize the available bandwidth of the bus subsystem and reduce the time required to complete the zero initialization.Type: ApplicationFiled: August 29, 2001Publication date: March 6, 2003Inventors: Richard W. Busser, Ian R. Davies
-
Patent number: 6523087Abstract: A method for enhancing the performance on non-full stripe writes while closing the RAID5 write hole is disclosed. When a RAID controller receives data to be written to a disk array, the controller stores the data in nonvolatile memory, and opens a write operation. When the current write operation is initiated, the controller reads the old data from the disk array and checks for cached parity that corresponds to the stripe of data that is to be modified. If the parity is cached, the controller reads the cached parity, and if the parity is not cached, the controller reads the old parity from the disk array. New parity is then computed. If the parity was cached, the controller will modify a parity log to show an outstanding data write. If the parity was not cached, the controller will open a parity log to show an outstanding data and parity write. The new parity is then cached in non-volatile memory. The controller then determines whether the following write operation is for the same stripe of data.Type: GrantFiled: March 6, 2001Date of Patent: February 18, 2003Assignee: Chaparral Network Storage, Inc.Inventor: Richard W. Busser
-
Publication number: 20020170017Abstract: A system and method for efficient parity mirroring between controllers of an active-active controller pair in a redundant array of inexpensive disks (RAID) system is disclosed. When a second controller in an active-active controller pair receives new data to be written to a disk array, it mirrors the new data to a first controller in the active-active controller pair. The second controller then computes new parity for the data stripe associated with the new data. The second controller then opens a parity log and mirrors logical block address (LBA) information for the new data to a first controller in the active-active controller pair. In the event of a failure of the second controller after mirroring the LBA information and prior to completing the write operation, the first controller uses the LBA information to complete the write operation, assuring that the new data and new parity are properly stored on the disk array.Type: ApplicationFiled: May 9, 2001Publication date: November 14, 2002Inventor: Richard W. Busser
-
Publication number: 20020161970Abstract: A method for enhancing the performance on non-full stripe writes while closing the RAID 5 write hole is disclosed. When a RAID controller receives data to be written to a disk array, the controller stores the data in nonvolatile memory, and opens a write operation. When the current write operation is initiated, the controller reads the old data from the disk array and checks for cached parity that corresponds to the stripe of data that is to be modified. If the parity is cached, the controller reads the cached parity, and if the parity is not cached the controller reads the old parity from the disk array. New parity is then computed. If the parity was cached, the controller will modify a parity log to show an outstanding data write. If the parity was not cached, the controller will open a parity log to show an outstanding data and parity write. The new parity is then cached in non-volatile memory. The controller then determines whether the following write operation is for the same stripe of data.Type: ApplicationFiled: March 6, 2001Publication date: October 31, 2002Inventor: Richard W. Busser
-
Publication number: 20020095616Abstract: A method is disclosed for recovering data from a RAID system after a transient failure. After a transient failure, the cause of the failure is corrected and a user initiates a trust array command. The RAID controller receives the trust array command and performs several modifications to the disk metadata. First, the partition age metadata field is synchronized. Second, the primary dead partition map metadata field is cleared. Third, the partition status metadata field is set to initialized. Following the metadata modifications, the RAID controller verifies that it can access all of the drives in the array. If all drives are accessible, the array is on-line and fault tolerant without the need for re-constructing a drive within the array, or re-creating the array. If one drive remains inaccessible, data is available from the array, and the array is in a critical state. If two or more drives remain inaccessible, the array remains off-line and a partial recovery may be attempted.Type: ApplicationFiled: December 29, 2000Publication date: July 18, 2002Inventor: Richard W. Busser