Patents by Inventor Noel S. Otterness

Noel S. Otterness 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: 6950900
    Abstract: A method and apparatus that moves data stored in a first (e.g., 512) byte sector format to a second (e.g., 52x) byte sector size. The method and apparatus performs data migration without interruption of the host's ability to write and read data from the system. By migrating data to a number of new drives added to the system drive, the additional data which will be stored may be accommodated. The added drives allow the migration to take place without interruption of the hosts I/O path or allows the data to be migrated to an entirely new set of physical drives. The present invention also provides the ability to migrate data between sector sizes and still protect against component failures. The migration is performed in such a way that if a controller fails while performing the migration the survivor controller will be able to pick up where the failed controller left off.
    Type: Grant
    Filed: September 27, 2000
    Date of Patent: September 27, 2005
    Assignee: International Business Machines Corporation
    Inventors: Brian Dennis McKean, Noel S. Otterness
  • Patent number: 6792472
    Abstract: A system, method, and computer program on a computer readable medium for allowing multiple controllers to communicate with other controllers through the use of a routing table are disclosed. The controllers do not need to be directly connected to each other as long as there is a path through other controllers to reach each other. Routing tables used to determine the optimal communications paths between controllers. These techniques are disclosed that allow the controllers to compute the optimal communications path between two controllers. A first technique computes the path which crosses the least number of controllers to reach the controller to which the message is being sent. A second technique is to compute the path which has the least data traffic crossing the controllers and the interconnects. A third technique combines the first two techniques in that it uses both pieces of information, the shortest route and minimal data traffic, to determine an optimal routing path.
    Type: Grant
    Filed: March 31, 2000
    Date of Patent: September 14, 2004
    Assignee: International Business Machines Corporation
    Inventors: Noel S. Otterness, Joseph G. Skazinski
  • Patent number: 6792505
    Abstract: Controller for coupling data between a data storage system and a host includes a first processor and a first RAM coupled to the first processor; a first auxiliary processor including a first memory controller and a first cache coupled to the first memory controller, the first memory controller including first interface for coupling with second auxiliary processor including second memory controller and associated second cache and second interface for coupling with first auxiliary processor, first memory controller including logic for treating the caches as single memory; a bus coupling first primary processor and first auxiliary processor; and interconnection channel separate from the bus coupling first interface of first memory controlled and second interface of second memory controller. Interconnection may be an out-of-band channel permitting device-to-device sharing of associated cache memories without requiring data transfer over the bus. Method and computer program product are also provided.
    Type: Grant
    Filed: April 16, 2001
    Date of Patent: September 14, 2004
    Assignee: International Business Machines Corporation
    Inventors: Noel S. Otterness, Joseph G. Skazinski
  • Patent number: 6745324
    Abstract: A method and apparatus are provided for dynamically creating an executable image from an Object File Format (OFF) file stored in a reserved area 175 of one of a plurality of data storage devices 125 in a memory system 100. In the method, a controller 105 having a Programable Read Only Memory (PROM) 160, Random Access Memory (RAM) 155 and a Central Processing Unit (CPU) 150 is coupled to the plurality of data storage devices 125. The memory system 100 is initialized using an initial boot sequence stored in the PROM 160. This initialization can include a hardware discovery sequence to identify all hardware present in the memory system 100. Data relating to the discovered hardware is read from the OFF file and translated from an object format into an executable image that is assembled in RAM 155. Optionally, the PROM 160 is an Electronically Erasable PROM (EEPROM) and the assembled executable image is stored in the EEPROM replacing the initial boot sequence.
    Type: Grant
    Filed: November 16, 2000
    Date of Patent: June 1, 2004
    Assignee: International Business Machines Corporation
    Inventors: Joseph G. Skazinski, Noel S. Otterness
  • Patent number: 6681339
    Abstract: Structure and method for efficient failover and failback techniques in a data storage system utilizing a dual-active controller configuration for minimizing a delay in responding to I/O requests from a host system following a controller failure is described. A stripe lock data structure is defined to maintain reservation status or stripe locks of cache lines within data extents that are part of a logical unit or storage volume. When a controller fails, dirty cache line data of a failed controller is taken over by a survivor controller. The stripe lock data structure is used to process I/O requests from a host system, by the failed controller. The data storage system functions in a single-active configuration until the dirty cache line data is flushed to one or more storage volumes, by the survivor controller. The inventive structure and method provide utilize a storage volume reservation system. The stripe lock data structure is defined in memory within each of the two or more caching controllers.
    Type: Grant
    Filed: January 16, 2001
    Date of Patent: January 20, 2004
    Assignee: International Business Machines Corporation
    Inventors: Brian D. McKean, Noel S. Otterness, Joseph G. Skazinski
  • Patent number: 6654831
    Abstract: A data storage system includes a pluralierty of controllers in a master/slave N-way controller topology. The master controller is coupled to a host system, and each controller is operatively coupled to one of a plurality of data unit arrays. The plurality of data unit arrays each include a plurality of disk units that are linked together. The linked disk units appear as a continuous logical unit and each data unit array forms a data span, such that the plurality of data unit arrays form N-way data spans. Each controller is adapted to transfer data between the data units and the master controller in response to instructions therefrom based on a data configuration. The data is then transferred between the master controller and the host system. The master controller is adapted to balance I/O requests amongst the plurality of controllers and re-direct an I/O request directed to a failed controller to an active controller.
    Type: Grant
    Filed: March 7, 2000
    Date of Patent: November 25, 2003
    Assignee: International Business Machine Corporation
    Inventors: Noel S. Otterness, Joseph G. Skazinski
  • Patent number: 6601138
    Abstract: This invention describes structure and method for an efficient architecture allowing n-controllers to work together to improve system performance and fault tolerance, when n is greater than two. This invention provides a new type of RAID architecture using operational primitives in a message passing multi-controller environment to solve the problems presented in having multiple controllers distribute a non-uniform workload. This architecture allows for expansion of the I/O processing capability limited only by the efficiency of the underlying message transport method. In simple terms, the inventive technique breaks input/output (I/O) operations into a set of simple methods which can then be passed around as tokens, or pieces of work to be executed by whichever controller has the least amount of work to perform. (I/O operations include all operations needed to perform the tasks of a RAID controller. These include host read/write commands, rebuilds, data migration, etc.
    Type: Grant
    Filed: June 4, 1999
    Date of Patent: July 29, 2003
    Assignee: International Business Machines Corporation
    Inventors: Noel S. Otterness, Joseph G. Skazinski
  • Patent number: 6574709
    Abstract: The invention provides a system structure, method and computer program product for mirroring cache data from a first controller to an alternate controller in a data storage system, where the data storage system is being managed by the controllers in dual active configuration and the first and alternate controllers are also connected to a system drive that includes one or more disk storage devices and the first controller is connected to a first memory, and the alternate controller is connected to a second memory where each controller has an identical memory layout, and a cache line descriptor data structure defined therein and the cache line descriptor data structure is used by each respective controller to track data mirrored by the controller to a memory connected to an alternate controller and the cache line descriptor data structure includes information for reducing the amount of data mirrored to an alternate controller for secondary cache data mirror operations on same originating cache data with respect
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: June 3, 2003
    Assignee: International Business Machine Corporation
    Inventors: Joseph G. Skazinski, Noel S. Otterness
  • Patent number: 6490659
    Abstract: A storage volume reservation system and method for maintaining cache coherency amongst a plurality of caching controllers in a data storage system during a warm start cache recovery utilizing a stripe lock data structure. The stripe lock data structure is defined to maintain reservation status of cache lines within data extents that are part of a logical unit or storage volume. A battery backup unit (BBU) stores stripe lock data structure and dirty cache line data of each of the plurality of controllers during a power failure. Using the stripe lock data structure, a delay required for continued processing of I/O requests from one or more host computers following the warm start cache recovery is minimized. Without saving the stripe lock data structure, continued processing of I/O requests from one or more host computers requires reestablishing stripe locks, during the warm start cache recovery, for cache line data saved before the power failure.
    Type: Grant
    Filed: March 31, 2000
    Date of Patent: December 3, 2002
    Assignee: International Business Machines Corporation
    Inventors: Brian D. McKean, Noel S. Otterness, Joseph G. Skazinski
  • Patent number: 6487680
    Abstract: The present invention provides a system, apparatus, and method for managing a data storage system in n-way active controller configuration, such that a controller can detect the failure of and reset more than just a single other controller. To accomplish this, a controller sends a ping message to at least a subset of the other controllers, and waits for any of the other controllers to respond to the ping message within a first predetermined amount of time. If any of the other controllers do not respond to the ping message within the first predetermined amount of time, it is determined that the non-responding controller has failed. The controller will reset any failed controller.
    Type: Grant
    Filed: December 3, 1999
    Date of Patent: November 26, 2002
    Assignee: International Business Machines Corporation
    Inventors: Joseph G. Skazinski, Noel S. Otterness
  • Publication number: 20020152355
    Abstract: Controller for coupling data between a data storage system and a host includes a first processor and a first RAM coupled to the first processor; a first auxiliary processor including a memory controller and a first cache coupled to the first memory controller, the first memory controller including first interface for coupling with second auxiliary processor including second memory controller and associated second cache and second interface for coupling with first auxiliary processor, first memory controller including logic for treating the caches as single memory; a bus coupling first primary processor and first auxiliary processor; and interconnection channel separate from the bus coupling first interface of first memory controller and second interface of second memory controller. Interconnection may be an out-of-band channel permitting device-to-device sharing of associated cache memories without requiring data transfer over the bus. Method and computer program product are also provided.
    Type: Application
    Filed: April 16, 2001
    Publication date: October 17, 2002
    Applicant: International Business Machines Corporation
    Inventors: Noel S. Otterness, Joseph G. Skazinski
  • Patent number: 6460122
    Abstract: This inventive provides a multiple level cache structure and multiple level caching method that distributes I/O processing loads including caching operations between processors to provide higher performance I/O processing, especially in a server environment. A method of achieving optimal data throughput by taking full advantage of multiple processing resources is disclosed. A method for managing the allocation of the data caches to optimize the host access time and parity generation is disclosed. A cache allocation for RAID stripes guaranteed to provide fast access times for the XOR engine by ensuring that all cache lines are allocated from the same cache level is disclosed. Allocation of cache lines for RAID levels which do not require parity generation and are allocated in such manner as to maximize utilization of the memory bandwidth is disclosed.
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: October 1, 2002
    Assignee: International Business Machine Corporation
    Inventors: Noel S. Otterness, William A. Brant, Keith E. Short, Joseph G. Skazinski
  • Publication number: 20020133735
    Abstract: Structure and method for efficient failover and failback techniques in a data storage system utilizing a dual-active controller configuration for minimizing a delay in responding to I/O requests from a host system following a controller failure is described. A stripe lock data structure is defined to maintain reservation status or stripe locks of cache lines within data extents that are part of a logical unit or storage volume. When a controller fails, dirty cache line data of a failed controller is taken over by a survivor controller. The stripe lock data structure is used to process I/O requests from a host system, by the failed controller. The data storage system functions in a single-active configuration until the dirty cache line data is flushed to one or more storage volumes, by the survivor controller. The inventive structure and method provide utilize a storage volume reservation system. The stripe lock data structure is defined in memory within each of the two or more caching controllers.
    Type: Application
    Filed: January 16, 2001
    Publication date: September 19, 2002
    Applicant: International Business Machines Corporation
    Inventors: Brian D. McKean, Noel S. Otterness, Joseph G. Skazinski
  • Publication number: 20010049774
    Abstract: This invention describes structure and method for an efficient architecture allowing n-controllers to work together to improve system performance and fault tolerance, when n is greater than two. This invention provides a new type of RAID architecture using operational primitives in a message passing multi-controller environment to solve the problems presented in having multiple controllers distribute a non-uniform workload. This architecture allows for expansion of the I/O processing capability limited only by the efficiency of the underlying message transport method. In simple terms, the inventive technique breaks input/output (I/O) operations into a set of simple methods which can then be passed around as tokens, or pieces of work to be executed by whichever controller has the least amount of work to perform. (I/O operations include all operations needed to perform the tasks of a RAID controller. These include host read/write commands, rebuilds, data migration, etc.
    Type: Application
    Filed: June 4, 1999
    Publication date: December 6, 2001
    Inventors: NOEL S. OTTERNESS, JOSEPH G. SKAZINSKI
  • Patent number: 6247099
    Abstract: System, method and computer program for maintaining cache coherency amongst a plurality of caching storage controllers operating in unison supplying data in response to requests from one or more host computers. The method comprises the steps of defining a reservation data structure to maintain reserved, partial, and full ownership status of data extents that are part of the logical unit or storage volume, and using the reservation data structure to verify that a new update to the data is allowed.
    Type: Grant
    Filed: June 3, 1999
    Date of Patent: June 12, 2001
    Assignee: International Business Machines Corporation
    Inventors: Joseph Skazinski, Brian McKean, Noel S. Otterness
  • Patent number: 6182198
    Abstract: The present invention is a method and system of performing a snapshot backup of a storage unit of a host system. The host system includes at least one primary system drive, a primary logic unit, a log system drive and at least one backup logic unit. A particular method is designed to perform the snapshot backup while allowing normal read operations and write operations to occur. After initializing the snapshot backup, the method processes a write operation of new data submitted to the primary logic unit to be written to the primary system drive during the snapshot backup by reading the old data that is on the primary system drive, buffering the old data, overwriting the old data and writing the old data to the log system drive if the write operation is the first write operation to a specific sector in the primary system drive for the snapshot backup.
    Type: Grant
    Filed: June 4, 1999
    Date of Patent: January 30, 2001
    Assignee: International Business Machines Corporation
    Inventors: Walter A. Hubis, Noel S. Otterness