Patents Assigned to Dot Hill Systems Corporation
  • Publication number: 20140365725
    Abstract: A method for destaging write data from a storage controller to storage devices is provided. The method includes determining that a cache element should be transferred from a write cache of the storage controller to the storage devices, calculating that a dirty watermark is above a dirty watermark maximum value, identifying a first cache element to destage from the write cache to the storage devices, transferring a first data container including the first cache element to the storage devices, and incrementing an active destage count. The method also includes repeating determining, calculating, identifying, transferring, and incrementing if the active destage count is less than an active destage count maximum value. The active destage count is a current number of write requests issued to a virtual disk that have not yet been completed, and the virtual disk is a RAID group comprising one or more specific storage devices.
    Type: Application
    Filed: August 21, 2014
    Publication date: December 11, 2014
    Applicant: DOT HILL SYSTEMS CORPORATION
    Inventors: Michael David Barrell, Zachary David Traut
  • Publication number: 20140351527
    Abstract: A method for providing efficient processing for many concurrent streams of sequential I/O requests is provided. In response to receiving an I/O request, the method includes determining if the I/O request corresponds to an active stream. If the request corresponds to an active stream, then the method includes updating an existing active list entry of an active list corresponding to the active stream, and if the I/O request does not correspond to an active stream, then instead converting and configuring an inactive list entry of an inactive list into a new active list entry. The inactive list stores available but unallocated resources, and the active list stores allocated resources. The active list includes a head at one end of the active list and a tail at an opposite end. The active list head corresponds to a most recently used entry, and the tail corresponds to a least recently used entry.
    Type: Application
    Filed: August 11, 2014
    Publication date: November 27, 2014
    Applicant: DOT HILL SYSTEMS CORPORATION
    Inventors: Zachary David Traut, Michael David Barrell
  • Patent number: 8886880
    Abstract: A method for destaging data from a memory of a storage controller to a striped volume is provided. The method includes determining if a stripe should be destaged from a write cache of the storage controller to the striped volume, destaging a partial stripe if a full stripe write percentage is less than a full stripe write affinity value, and destaging a full stripe if the full stripe write percentage is greater than the full stripe write affinity value. The full stripe write percentage includes a full stripe count divided by the sum of the full stripe count and a partial stripe count. The full stripe count is the number of stripes in the write cache where all chunks of a stripe are dirty. The partial stripe count is the number of stripes where at least one chunk but less than all chunks of the stripe are dirty.
    Type: Grant
    Filed: May 29, 2012
    Date of Patent: November 11, 2014
    Assignee: Dot Hill Systems Corporation
    Inventors: Michael David Barrell, Zachary David Traut
  • Patent number: 8869131
    Abstract: A method for downgrading firmware in a controller is provided. The method includes receiving a request, by the controller, to downgrade the firmware from a current version to an older version. For a feature implemented in the current version and not implemented in the older version, the method includes determining if the feature is currently in-use by the controller. If the feature is currently in-use by the controller, the method includes warning a user and abandoning the request. If the feature is not currently in-use by the controller, the method includes checking other features implemented in the current version and not implemented in the older version, and repeating determining, providing, abandoning, and checking, and downgrading the firmware, if all of the features implemented in the current version and not implemented in the older version are not currently in-use by the controller.
    Type: Grant
    Filed: June 9, 2011
    Date of Patent: October 21, 2014
    Assignee: Dot Hill Systems Corporation
    Inventors: Yuanru Frank Wang, Monte Scott Gilstrap
  • Patent number: 8840095
    Abstract: A spring for ejecting a storage device module from a chassis is provided. The spring includes a first end, where the first end is held captive when the spring is installed in the chassis. The spring includes a second end, opposite the first end, and a body between the first and second ends. The body is formed with serpentine bends proceeding linearly between the first and second ends and in a common plane with the first end. The second end is oriented orthogonal to the common plane. The spring is in expansion when the storage device module is inserted into the chassis. The storage device module pushes against the second end when the storage device module is fully inserted into the chassis. The spring exerts force outward from the chassis when expanded.
    Type: Grant
    Filed: January 11, 2012
    Date of Patent: September 23, 2014
    Assignee: Dot Hill Systems Corporation
    Inventors: Brenden Michael Rust, David Michael Keffeler, Andrew Rudolph Heyd
  • Publication number: 20140265784
    Abstract: A compliant drawer latch is provided. The compliant drawer latch includes a first portion affixed to an inside surface of a chassis, and a second portion coupled to the first portion. The second portion includes a latch strike plate, a latch spring cap plate, and a latch return spring arranged between the latch strike plate and the latch spring cap plate. A drawer contacts the latch strike plate when the drawer is seated in the chassis. When the drawer over-travels the latch strike plate compresses the latch return spring up to a predetermined distance, and the compressed latch return spring applies force to the latch strike plate to return the latch strike plate to a latching position when the drawer rebounds from over-travel.
    Type: Application
    Filed: December 9, 2013
    Publication date: September 18, 2014
    Applicant: Dot Hill Systems Corporation
    Inventors: Michael Joseph Russell, David Michael Keffeler, Andrew Rudolph Heyd, Christopher Ellis Schroeder
  • Publication number: 20140258612
    Abstract: A plurality of arrays of storage devices, each providing dual storage device redundancy, is provided. The plurality of arrays of storage devices includes a plurality of mirrored sets of primary storage devices, each including an even number of at least two or more primary storage devices. Each of the mirrored sets of primary storage devices stores a first and a second copy of data. The plurality of arrays of storage devices also includes a secondary storage device, which is a single physical storage device that stores a third copy of the data stored on each of the plurality of mirrored sets of primary storage devices. The secondary storage device has at least the capacity to store the data stored on the plurality of mirrored sets of primary storage devices. Dual storage device redundancy preserves data if data cannot be read from one or two physical storage devices in any array.
    Type: Application
    Filed: July 29, 2013
    Publication date: September 11, 2014
    Applicant: Dot Hill Systems Corporation
    Inventors: George Alexander Kalwitz, Michael David Barrell, Zachary David Traut, Thomas George Wicklund
  • Publication number: 20140258638
    Abstract: A method for providing efficient use of a read cache by a storage controller is provided. The method includes the storage controller receiving a read request from a host computer and determining if a host stream size is larger than a read cache size. The host stream size is a current cumulative size of all read requests in the host stream. If the host stream size is larger than the read cache size then migrating data to a first area of the read cache containing data that has been in the read cache for the longest time. If the host stream size is not larger than the read cache size then migrating data to a second area of the read cache containing data that has been in the read cache for the shortest time. The host stream is a consecutive group of sequential read requests from the host computer.
    Type: Application
    Filed: July 29, 2013
    Publication date: September 11, 2014
    Applicant: DOT HILL SYSTEMS CORPORATION
    Inventors: Zachary David Traut, Michael David Barrell
  • Publication number: 20140258608
    Abstract: A method for a pair of redundant storage controllers to ensure reliable cached write data transfers to storage device logical volumes is provided. The method includes maintaining metadata including a first number identifying which controller currently owns the volume, a second number identifying which controller previously owned the volume, a third number identifying which controller is a preferred owner of the volume, and an indication if the volume is write protected. The method also includes determining if all volumes currently owned by the controller are write protected. If all volumes currently owned by the controller are write protected, then the method includes verifying that the second controller is working and transferring cache data from the second controller to the first controller. If all volumes currently owned by the first controller are not write protected, then the method includes updating the second number and placing all volumes online.
    Type: Application
    Filed: March 4, 2014
    Publication date: September 11, 2014
    Applicant: DOT HILL SYSTEMS CORPORATION
    Inventor: Ritvik Viswanatha
  • Publication number: 20140250268
    Abstract: A method for providing improved sequential read performance in a storage controller is provided. In response to the storage controller receiving a host read request from a host computer, the method includes identifying, by the storage controller, a largest burst length of a plurality of burst lengths in a memory of the storage controller, and determining a maximum number of consecutive times between bursts having a value less than a predetermined value. A burst includes a consecutive group of sequential host read requests from the same host computer. The method also includes multiplying the largest burst length of the plurality of burst lengths by the maximum number of consecutive times between bursts having a value less than the predetermined value to obtain an effective burst length and reading into a storage controller cache memory at least the effective burst length of data from storage devices coupled to the storage controller.
    Type: Application
    Filed: July 29, 2013
    Publication date: September 4, 2014
    Applicant: DOT HILL SYSTEMS CORPORATION
    Inventors: Zachary David Traut, Michael David Barrell
  • Patent number: 8812913
    Abstract: A method for maintaining reliable communication on a link between an expander and a storage device is provided. The method includes detecting, by a processor coupled to the link, an error corresponding to the link, and maintaining a count of detected errors for the link, by the processor. The method also includes determining, by the processor, if the count of detected errors is above a first error threshold. If the count of detected errors is not above the first error threshold, then the method repeats the detecting, maintaining, and determining steps. If the count of detected errors is above the first error threshold, then the method provides the processor placing the storage device into a segregated zone.
    Type: Grant
    Filed: September 23, 2011
    Date of Patent: August 19, 2014
    Assignee: Dot Hill Systems Corporation
    Inventor: Phillip Raymond Colline
  • Patent number: 8751467
    Abstract: A method, device, and system are provided for accessing metadata in a data storage system. More specifically, a requesting application requests a cache application to allocate a cache page to retrieve metadata from a storage device. After metadata is written to the cache page, the cache page is locked by the requesting application. The cache page is maintained in a locked state by the requesting application. This allows the data stored within the cache page to be quickly accessed and updated by the requesting application without waiting for the cache page to be written back to the storage device after every update to the cache page occurs.
    Type: Grant
    Filed: January 18, 2007
    Date of Patent: June 10, 2014
    Assignee: Dot Hill Systems Corporation
    Inventor: Kent Lee
  • Patent number: 8717753
    Abstract: A latching device for latching a storage device module into a storage chassis is provided. The latching device includes a latch member having a latching end and a spring end opposite the latching end, the latch member slidingly disposed within a front bezel of the storage device module and being movable between a latching position and a releasing position. The latching device also includes a latch spring between a bearing surface of the front bezel and the spring end of the latch member. The latch spring is in increased compression when the latch member transitions from the latching position to the releasing position, and the latch spring is in decreased compression when the latch member transitions from the releasing position to the latching position. The latching end extends through a latch hole in a side member of the storage chassis for locking the storage device module in the chassis.
    Type: Grant
    Filed: January 11, 2012
    Date of Patent: May 6, 2014
    Assignee: Dot Hill Systems Corporation
    Inventors: David Michael Keffeler, Andrew Rudolph Heyd
  • Publication number: 20140105676
    Abstract: A latching device for latching a storage device module into a storage chassis is provided. The latching device includes a latch member having a latching end and a spring end opposite the latching end, the latch member slidingly disposed within a front bezel of the storage device module and being movable between a latching position and a releasing position. The latching device also includes a latch spring between a bearing surface of the front bezel and the spring end of the latch member. The latch spring is in increased compression when the latch member transitions from the latching position to the releasing position, and the latch spring is in decreased compression when the latch member transitions from the releasing position to the latching position. The latching end extends through a latch hole in a side member of the storage chassis for locking the storage device module in the chassis.
    Type: Application
    Filed: December 16, 2013
    Publication date: April 17, 2014
    Applicant: DOT HILL SYSTEMS CORPORATION
    Inventors: David Michael Keffeler, Andrew Rudolph Heyd
  • Patent number: 8694812
    Abstract: A method for providing reduced power consumption in a computer memory system is provided. The method includes calibrating, by a processor, a volatile memory of the computer memory system at a first and a second operating speed, where the second operating speed is higher than the first operating speed. The method also includes operating, by a memory controller coupled to the processor and the volatile memory, the volatile memory at the second operating speed if a main power source provides power to the computer memory system. The method further includes operating, by the memory controller, the volatile memory at the first operating speed if a backup power source provides power to the memory controller and the volatile memory. The backup power source provides power to the memory controller and the volatile memory when there is a loss of main power to the computer memory system.
    Type: Grant
    Filed: January 24, 2011
    Date of Patent: April 8, 2014
    Assignee: Dot Hill Systems Corporation
    Inventors: Rex Weldon Vedder, Bradford Edwin Golson, Michael Joseph Peters
  • Publication number: 20140075136
    Abstract: A method for protecting page-level metadata in a storage system is provided. The method includes providing in a page table first protection data, receiving a command to read data from a page of the storage system corresponding to the page table, and comparing first protection data to second protection data. If the first protection data is different than the second protection data, then the method includes identifying third protection data in the storage system and comparing the third protection data to the first protection data. If the third protection data is different than the first protection data, then the method includes determining that the page-level metadata is inconsistent.
    Type: Application
    Filed: September 12, 2012
    Publication date: March 13, 2014
    Applicant: DOT HILL SYSTEMS CORPORATION
    Inventor: Ian Robert Davies
  • Patent number: 8656131
    Abstract: The present invention provides for the expansion of a virtual storage device. Expansion of the virtual storage device includes adding one or more additional storage device units to an existing virtual storage device. Blocks or strips included in an added storage device unit are assigned addresses, to allow the added storage capacity to be accessed immediately. In order to reestablish a pattern of data storage addresses from the original storage device units of the pre-expanded virtual storage device across all of the storage device units of the post-expanded virtual storage device, temporary storage is provided. In particular, as a strip of data is relocated to its proper post-expand location, the data occupying that location is placed in a temporary storage buffer. Data in the temporary storage buffer is then written to the proper post-expand location for that data, with displaced data being written to a second temporary storage buffer.
    Type: Grant
    Filed: February 2, 2009
    Date of Patent: February 18, 2014
    Assignee: Dot Hill Systems Corporation
    Inventor: Thomas George Wicklund
  • Patent number: 8656123
    Abstract: A method and device for cloning snapshots is provided. A new snapshot can be created by cloning an existing snapshot. The clone snapshot may use the preserved data of the existing snapshot, thereby obviating the need to copy the preserved data. Additionally, the clone snapshot may be created with a data structure for storing write data. Since the clone snapshot initially has no write data to store, the creation of the entire clone snapshot can be accomplished without copying any preserved data or write data from the existing snapshot, thereby increasing the efficiency with which a clone snapshot can be created.
    Type: Grant
    Filed: August 12, 2009
    Date of Patent: February 18, 2014
    Assignee: Dot Hill Systems Corporation
    Inventor: Kent Lee
  • Publication number: 20130326149
    Abstract: A method for destaging data from a memory of a storage controller to a striped volume is provided. The method includes determining if a stripe should be destaged from a write cache of the storage controller to the striped volume, destaging a partial stripe if a full stripe write percentage is less than a full stripe write affinity value, and destaging a full stripe if the full stripe write percentage is greater than the full stripe write affinity value. The full stripe write percentage includes a full stripe count divided by the sum of the full stripe count and a partial stripe count. The full stripe count is the number of stripes in the write cache where all chunks of a stripe are dirty. The partial stripe count is the number of stripes where at least one chunk but less than all chunks of the stripe are dirty.
    Type: Application
    Filed: May 29, 2012
    Publication date: December 5, 2013
    Applicant: DOT HILL SYSTEMS CORPORATION
    Inventors: Michael David Barrell, Zachary David Traut
  • Patent number: 8510598
    Abstract: A method for providing reduced power consumption in a computer memory system is provided. The method includes transferring, by a memory controller coupled to a volatile memory, a non-volatile memory, and a buffer, first data from the volatile memory to the buffer. The buffer stores less data than the volatile memory and the non-volatile memory. The method also includes placing the volatile memory into self-refresh mode after transferring the first data to the buffer. The method further includes conveying the first data from the buffer to the non-volatile memory, where the amount of first data exceeds a predetermined threshold. While conveying the first data, the memory controller takes the volatile memory out of self-refresh mode when the amount of first data in the buffer reaches the predetermined threshold. The volatile memory is ready to transfer second data to the buffer when the memory controller is finished transferring the first data.
    Type: Grant
    Filed: January 24, 2011
    Date of Patent: August 13, 2013
    Assignee: Dot Hill Systems Corporation
    Inventors: Rex Weldon Vedder, Bradford Edwin Golson, Michael Joseph Peters