Patents by Inventor David C. Reed

David C. Reed 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).

  • Publication number: 20200143039
    Abstract: In one aspect of the present description, operations are described for detecting whether programming code of a first computer program has been modified by a second computer program. In one embodiment, the modification detecting includes registering a first section of programming code of the first computer program in a first registry data structure. To detect a modification, the registered first section of programming code may be validated. In one embodiment, the validating includes comparing the section of programming code actually located at the first memory address to the registered first section of programming code. In another aspect, various selectable remedial actions may be taken upon detecting modification of programming code of the first computer program. Other features and aspects may be realized, depending upon the particular application.
    Type: Application
    Filed: January 6, 2020
    Publication date: May 7, 2020
    Inventors: Philip R. Chauvet, Joseph V. Malinowski, David C. Reed, Max D. Smith
  • Patent number: 10642703
    Abstract: A method for configuring a storage system. The method includes a computer processor receiving at a storage system, an indication to initiate data mirroring for an application. The method further includes determining a set of information associated with a network-accessible computing system that hosts the application. The method further includes identifying an analysis of historic performance data associated with data mirroring to the storage system with respect to the application. The method further includes identifying a set configuration information associated with data mirroring from among a plurality of sets of configuration information associated with data mirroring based, at least in part, on the determined set of information associated with the network-accessible computing system and the identified analysis of performance data associated with data mirroring with respect to the application.
    Type: Grant
    Filed: November 30, 2017
    Date of Patent: May 5, 2020
    Assignee: International Business Machines Corporation
    Inventors: Gregory E. McBride, Dash Miller, Miguel Perez, David C. Reed
  • Patent number: 10628402
    Abstract: A method includes receiving a request to store a record in a base data set and determining whether the base data set can accommodate the record. In the event the base data set cannot accommodate the record, the method automatically creates an overflow data set to accommodate the record, stores the record in the overflow data set, and updates an index of the base data set to include a key associated with the record. The key points to the overflow data set as containing the record. In certain embodiments, the base data set and overflow data set are both keyed VSAM data sets. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: September 27, 2017
    Date of Patent: April 21, 2020
    Assignee: International Business Machines Corporation
    Inventors: Philip R. Chauvet, David C. Reed, Michael R. Scott
  • Patent number: 10628167
    Abstract: A new layer for runtime detection of vendor hooks, with respect to a program module, includes mapping of branching instructions and their respective targets. When the program module is compiled, branch instructions are mapped and recorded to generate one or more branch maps. A branch map includes target program module addresses (or associated respective placeholders) and respective instruction offsets. At runtime, placeholders are replaced with respective target program module addresses. At runtime, actual branching information is compared to branching information included in the branch map. If a discrepancy is detected between runtime branching information and the corresponding branching information recorded in the branch map, a responsive action is triggered.
    Type: Grant
    Filed: February 21, 2018
    Date of Patent: April 21, 2020
    Assignee: International Business Machines Corporation
    Inventors: Thomas C. Reed, Kenneth J. Owin, Joseph V. Malinowski, David C. Reed
  • Patent number: 10599531
    Abstract: Provided are a computer program product, system, and method to use data set copies for recovery of a data set in event of a failure. In response to an update to the data set, a determination is made of an update group to include at least one copy of the data set that was not in a last determined update group to which a previous update was applied and to exclude at least one copy of the data set that was in the last determined update group. The update to the data set is applied to the copies of the data set in the update group and not applied to the copies not in the update group. In response to a failure event, the data set is recovered from one of the copies of the data set in the update group or not in the update group.
    Type: Grant
    Filed: February 16, 2018
    Date of Patent: March 24, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Thomas C. Reed, David C. Reed
  • Patent number: 10599508
    Abstract: A method for collecting diagnostic information associated with an I/O error is disclosed. In one embodiment, such a method includes detecting an error associated with an input/output (I/O) operation. The method determines whether the error can be re-driven and, if so, enables various diagnostic functions to improve collection of diagnostic information. The method then immediately re-drives the I/O operation associated with the error in order to recreate the error. Using the diagnostic functions that have been enabled, the method captures diagnostic information associated with the recreated error. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: June 8, 2017
    Date of Patent: March 24, 2020
    Assignee: International Business Machines Corporation
    Inventors: Dash D. Miller, Joseph V. Malinowski, Tabor R. Powelson, David C. Reed
  • Patent number: 10592362
    Abstract: A method for modifying a configuration of a storage system. The method includes one or more computer processors identifying data received at a logical partition (LPAR) of a storage system, wherein a copy program associated with a process for data mirroring executes within the LPAR. The method further includes determining a first rate based on analyzing a quantity of data received at the LPAR during the process of data mirroring. The method further includes creating a journal file from a set of records within the received data. The method further includes determining a second rate related to migrating the journal file from the LPAR to intermediate storage included in the storage system. The method further includes determining to modify a set of configuration information associated with the process of data mirroring by the storage system based, at least in part, on the first rate and the second rate.
    Type: Grant
    Filed: November 30, 2017
    Date of Patent: March 17, 2020
    Assignee: International Business Machines Corporation
    Inventors: Gregory E. McBride, Dash Miller, Miguel Perez, David C. Reed
  • Publication number: 20200081762
    Abstract: A method for analyzing data corruption is disclosed. In one embodiment, such a method includes identifying a data set to analyze for data corruption. This data set resides on tracks of a volume. The method further determines, from control information associated with the volume, on which tracks of the volume the data set resides. The method reads content of the data set without opening the data set by performing full-track reads of the tracks. The method further determines an expected format of the content by analyzing the control information. An actual format of the content is compared to the expected format to identify areas of the data set that may be corrupt. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: September 6, 2018
    Publication date: March 12, 2020
    Applicant: International Business Machines Corporation
    Inventors: Philip R. Chauvet, David C. Reed, Franklin E. McCune, Keith R. Smith
  • Patent number: 10579640
    Abstract: An apparatus, method, system, and program product are disclosed for mirroring resynchronization. In one example, an apparatus includes a mirroring status determination module that detects suspension of mirroring. The apparatus, in a further embodiment, includes a suspension determination module that determines a first change in at least one parameter that resulted in the detected suspension of mirroring. In various embodiment, the apparatus includes a parameter detection module that detects a second change in the at least one parameter that enables resuming minoring. In some embodiments, the parameter detection module detects the first change in the at least one parameter. In one embodiment, the apparatus includes a synchronization module that resumes minoring in response to the parameter detection module detecting the second change.
    Type: Grant
    Filed: October 12, 2015
    Date of Patent: March 3, 2020
    Assignee: International Business Machines Corporation
    Inventors: Dash D. Miller, Miguel A. Perez, David C. Reed, Max D. Smith
  • Publication number: 20200065001
    Abstract: A method for allocating new data sets while taking into account point-in-time copy relationships is disclosed. In one embodiment, such a method includes determining free space that is available in a volume. The method further determines which portions of the free space are not subject to residual point-in-time-copy relationships. In certain embodiments, these portions are represented in a modified free space mapping that identifies storage elements (e.g., tracks. groups of tracks, etc.) in the volume that make up the free space but are not subject to residual point-in-time-copy relationships. Once the portions are known, the method determines whether the portions are sufficient to accommodate the allocation of a new data set. If the portions are sufficient, the method allocates the new data set therein. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: August 25, 2018
    Publication date: February 27, 2020
    Applicant: International Business Machines Corporation
    Inventors: David C. Reed, Dash D. Miller, Esteban Rios, Donna Weaver
  • Publication number: 20200065202
    Abstract: A method for modifying a configuration of a storage system. The method includes a computer processor querying a network-accessible computing system to obtain information associated with an executing application that utilizes a storage system for a process of data mirroring. The method further includes identifying a set of parameters associated with a copy program executing within a logical partition (LIAR) of the storage system based on the obtained information, where the set of parameters dictates a number of reader tasks utilized by the copy program, where the copy program is a program associated with the process for data mirroring from the network-accessible computing system to the storage system. The method further includes executing the dictated number of reader tasks for the process of mirroring data associated with the executing application, from the network-accessible computing system to the storage system.
    Type: Application
    Filed: October 30, 2019
    Publication date: February 27, 2020
    Inventors: Gregory E. McBride, Dash Miller, Miguel Perez, David C. Reed
  • Publication number: 20200065520
    Abstract: Apparatuses, methods, and computer program products are provided for anonymizing a data set having an index component and a data component. In certain embodiments, the apparatuses, methods and computer program products make a copy of the data set, removes personal information from the data component, modifies an index component key value with a random value, modifies a data component key value with the same random value, and maintains a data set structure of the index component and the data component.
    Type: Application
    Filed: August 22, 2018
    Publication date: February 27, 2020
    Inventors: David C. Reed, Max D. Smith, Philip R. Chauvet, Franklin E. McCune
  • Publication number: 20200065192
    Abstract: A method for allocating storage space in a volume to a new data set is disclosed. In one embodiment, such a method includes maintaining, for a volume, a record of available storage elements. The method further receives an allocation request to allocate available storage elements in the volume to accommodate a new data set. The method allocates available storage elements in the volume to the new data set to fulfill the allocation request. In doing so, the method favors storage elements that have been available for a longer amount of time over storage elements that have been available for a shorter amount of time. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: August 27, 2018
    Publication date: February 27, 2020
    Applicant: International Business Machines Corporation
    Inventors: David C. Reed, Kenneth J. Owin, Esteban Rios, Harold S. Huber
  • Publication number: 20200065198
    Abstract: A method for preserving and recovering a deleted data set is disclosed. In one embodiment, such a method includes, upon deleting a data set from a volume, gathering metadata associated with the data set. This metadata is saved in a volume table of contents (VTOC) associated with the volume. Upon writing over a storage area occupied by the data set on the volume, the method deletes the metadata from the VTOC. Upon receiving an instruction to restore the data set, the method determines if the metadata is present in the VTOC. If the metadata is present in the VTOC, the method uses the metadata to rebuild control information associated with the data set and thereby restore the data set to the volume. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: August 27, 2018
    Publication date: February 27, 2020
    Applicant: International Business Machines Corporation
    Inventors: David C. Reed, Kenneth J. Owin, Esteban Rios, Harold S. Huber
  • Patent number: 10572357
    Abstract: A computer program product, system, and method for switching over from using a first primary storage to using a second primary storage when the first primary storage is in a mirror relationship. Migration operations are initiated to migrate data in the first primary storage to a second primary storage while the data in the first primary storage indicated in first change recording information is mirrored to a secondary storage and switch from using the first primary storage to the second primary storage. Resynchronization operations are initiated to indicate changes to data in the second primary storage in a second change recording information, copy writes from the second primary storage indicated in the first and the second change recording information to the secondary storage, and mirror writes to the second primary storage to the secondary storage in response to the copying the writes.
    Type: Grant
    Filed: March 29, 2017
    Date of Patent: February 25, 2020
    Assignee: International Business Machines Corporation
    Inventors: Gregory E. McBride, Dash D. Miller, Miguel A. Perez, David C. Reed
  • Patent number: 10565369
    Abstract: In one aspect of the present description, operations are described for detecting whether programming code of a first computer program has been modified by a second computer program. In one embodiment, the modification detecting includes registering a first section of programming code of the first computer program in a first registry data structure. To detect a modification, the registered first section of programming code may be validated. In one embodiment, the validating includes comparing the section of programming code actually located at the first memory address to the registered first section of programming code. In another aspect, various selectable remedial actions may be taken upon detecting modification of programming code of the first computer program. Other features and aspects may be realized, depending upon the particular application.
    Type: Grant
    Filed: March 6, 2018
    Date of Patent: February 18, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Philip R. Chauvet, Joseph V. Malinowski, David C. Reed, Max D. Smith
  • Patent number: 10552245
    Abstract: A method for collecting diagnostic information associated with an error is disclosed. In one embodiment, such a method includes detecting an error at one of a storage system and a host system coupled to the storage system. In response, the host system gathers software-related diagnostic information related to the error and sends the software-related diagnostic information to the storage system. Meanwhile, the storage system gathers hardware-related diagnostic information related to the error. Once the storage system obtains both software-related diagnostic information and hardware-related diagnostic information, the storage system bundles the information together and sends it to a service provider using a “call home” function. A corresponding system and computer program product are also disclosed.
    Type: Grant
    Filed: May 23, 2017
    Date of Patent: February 4, 2020
    Assignee: International Business Machines Corporation
    Inventors: Gregory E. McBride, Dash D. Miller, Miguel A. Perez, David C. Reed
  • Publication number: 20200026626
    Abstract: A method for modifying a configuration of a storage system. The method includes one or more computer processors identifying data received at a logical partition (LPAR) of a storage system, wherein a copy program associated with a process for data mirroring executes within the LPAR. The method further includes determining a first rate based on analyzing a quantity of data received at the LPAR during the process of data mirroring. The method further includes creating a journal file from a set of records within the received data. The method further includes determining a second rate related to migrating the journal file from the LPAR to intermediate storage included in the storage system. The method further includes determining to modify a set of configuration information associated with the process of data mirroring by the storage system based, at least in part, on the first rate and the second rate.
    Type: Application
    Filed: September 30, 2019
    Publication date: January 23, 2020
    Inventors: Gregory E. McBride, Dash Miller, Miguel Perez, David C. Reed
  • Publication number: 20200026596
    Abstract: A method for monitoring I/O is disclosed. In one embodiment, such a method includes identifying various stages of an I/O process. The method further monitors progress of an I/O operation as it advances through the stages of the I/O process. The method records, in a data structure associated with the I/O operation, timing information indicating time spent in each of the stages. This timing information may include, for example, entry and exit times of the I/O operation relative to each of the stages. In the event the I/O operation exceeds a maximum allowable time spent in one or more of the stages, the method generates an error. Various recovery actions may be taken in response to the error. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: July 21, 2018
    Publication date: January 23, 2020
    Applicant: International Business Machines Corporation
    Inventors: David C. Reed, Joseph V. Malinowski, Eric Seftel, Tabor R. Powelson
  • Publication number: 20200026610
    Abstract: A method for backing up data is disclosed. In one embodiment, such a method includes identifying a volume of data to back up, and determining a number of backup tasks that can operate in parallel to back up data in the volume. The number of backup tasks may be based on an amount of memory available, a fragmentation level of a target storage area, a number of tape mounts that are available, or the like. The method then divides the volume into a number of sections corresponding to the number of backup tasks. Each section is associated with a particular backup task. The method then initiates the backup tasks to back up their corresponding sections in parallel. In certain embodiments, each backup task generates a data set storing backup data from its corresponding section. A corresponding system and computer program product are also disclosed.
    Type: Application
    Filed: July 21, 2018
    Publication date: January 23, 2020
    Applicant: International Business Machines Corporation
    Inventors: David C. Reed, Esteban Rios, Max D. Smith, Gregory E. McBride