Patents Examined by Christopher McCarthy
  • Patent number: 10037238
    Abstract: An information handling system includes a remediation sever to receive an indication of an error condition at a data processing device via an Internet connection, the indication including an error code. The information handling system also includes a data storage device coupled to the remediation server, the data storage device to store a remediation database including error resolution procedures associated with error conditions. Each error condition is uniquely identified by an error code. An error code includes a concatenation of an alphanumeric string identifying a software application associated with the error condition, an alphanumeric string identifying an action to resolve the error condition, and an alphanumeric string identifying a software service corresponding to resolution of the error condition.
    Type: Grant
    Filed: February 10, 2016
    Date of Patent: July 31, 2018
    Assignee: DELL PRODUCTS, L.P.
    Inventor: Sathish Kumar Bikumala
  • Patent number: 9996433
    Abstract: According to one aspect of the present invention, there is provided a method for performing storage control. Member storage media and a hot spare storage medium are identified in a storage system. The member storage media are members of a storage medium array, and the hot spare storage medium is for joining in the storage medium array when a member storage medium fails. Data on a member storage medium having a write amplification effect is migrated to the hot spare storage medium. In the member storage medium having a write amplification effect, an erase operation is performed on a storage medium where the migrated data is located. Embodiments of the present invention can alleviate adverse impact caused by a write amplification effect.
    Type: Grant
    Filed: April 14, 2015
    Date of Patent: June 12, 2018
    Assignee: International Business Machines Corporation
    Inventors: Yong Hong Shi, Qian Su, Yu Sun, Wei You
  • Patent number: 9996450
    Abstract: A method and apparatus for testing application software for installation on hardware platforms. A software tool is qualified using a tool qualifier module running on a first virtual computer system having a configuration that comprises a processor of first processor type and a first virtual machine emulating a processor of second processor type. A benchmark performance is established for the first virtual machine. A second virtual computer system has a configuration that comprises a processor of third type and a second virtual machine emulating the processor of the second processor type. The second virtual machine is verified using a qualifier module to determine whether its performance is consistent with the benchmark performance to form a qualified second virtual machine. After the tool has been qualified, the tool is transferred from the first virtual machine to the qualified second virtual machine without needing to be requalified.
    Type: Grant
    Filed: May 3, 2016
    Date of Patent: June 12, 2018
    Assignee: THE BOEING COMPANY
    Inventors: Jonathan Nicholas Hotra, Murali Rangarajan
  • Patent number: 9983956
    Abstract: A method and apparatus for providing redundancy in an Automatic Teller Machine (ATM) is provided. Application software may be run on top of a virtual environment such as a virtual machine and/or a virtual disk environment. Should a software component fail, the virtual environment will “crash” but the ATM hardware and operating system will remain intact. If the software is fatally flawed—e.g., due to a faulty “upgrade” the older version may be “rolled back” from a previously stored virtual environment.
    Type: Grant
    Filed: January 18, 2016
    Date of Patent: May 29, 2018
    Assignee: Bank of America Corporation
    Inventors: Nicholas J. Munson, David W. Twigg, Daniel J. Farinella, III
  • Patent number: 9983952
    Abstract: A method, system, and computer program product that includes a processor cataloging a current resource definition and a current transaction state for the resource. The processor recovers the resource and a transaction state for the resource after an emergency restart, by utilizing the current resource definition and the current transaction state, wherein the recovering comprises recovering transactions of the resource. The processor completes or backs out of the transactions. The processor closes the resource and the processor recovers the resource by utilizing a global catalog.
    Type: Grant
    Filed: December 10, 2015
    Date of Patent: May 29, 2018
    Assignee: International Business Machines Corporation
    Inventors: Fraser P. Bohm, Guo Q. Li, Ian J. Mitchell, Andrew D. Wharmby
  • Patent number: 9971659
    Abstract: Systems and methods are disclosed for programming non-volatile storage. Methods involve identifying boot loader code stored in a first partition of a non-volatile storage, the boot loader code being marked as active, executing the boot loader code using one or more processors of the computing system, loading a firmware image to a second partition of the non-volatile storage, the second partition being separate from the first partition, and marking the firmware image as active. Methods further involve detecting a power loss event and, following a power cycle, determining that the firmware image is stored in the second partition and has been marked as active, and, in response to said determination, making a copy of the firmware image and storing the copy in the first partition.
    Type: Grant
    Filed: June 24, 2015
    Date of Patent: May 15, 2018
    Assignee: Western Digital Technologies, Inc.
    Inventors: Timothy J. McCabe, Edwin D. Barnes, Michael W. Webster, Paul Bricketto, Hee Kwong, Karman Tam, Michael F. Klett, Tino Lin, Mark Nguyen, John Minh Hon Quan
  • Patent number: 9952946
    Abstract: According to some embodiments, a virtual machine manager is operable to manage a virtual machine (VM) that spans a plurality of hardware appliances. The virtual machine manager receives a request to provide a service to a device, selects an application instance to provide the service to the device, and forwards the request for the service to the selected application instance. The selected application instance is running in an instance of the virtual machine associated with a first hardware appliance. The virtual machine manager determines session data associated with the service and provides the session data associated with the service to a second hardware appliance of the VM in order to enable the VM to provide high availability of the service to the device.
    Type: Grant
    Filed: February 4, 2014
    Date of Patent: April 24, 2018
    Assignee: Telefonaktiebolaget L M Ericsson (publ)
    Inventors: Zhongwen Zhu, Claes Goran Robert Edstrom
  • Patent number: 9946618
    Abstract: Provided are a computer program product, system, and method for a computer program product, system, and method for determining an availability score based on available resources of different resource types in a distributed computing environment of storage servers to determine whether to perform a failure operation for one of the storage servers. A health status monitor program deployed in the storage servers performs: maintaining information indicating availability of a plurality of storage server resources for a plurality of resource types; calculating an availability score as a function of a number of available resources of the resource types; and transmitting information on the availability score to a management program. The management program uses the transmitted information to determine whether to migrate services from the storage server from which the availability score is received to at least one of the other storage servers in the distributed computing environment.
    Type: Grant
    Filed: July 8, 2016
    Date of Patent: April 17, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Herve G. P. Andre, Matthew D. Carson, Rashmi Chandra, Clint A. Hardy, Larry Juarez, Tony Leung, Todd C. Sorenson
  • Patent number: 9946624
    Abstract: A system for tracing an operation of an electronic circuit is provided. The system includes an electronic circuit, a trace buffer, and a trigger detection circuit. The trace buffer includes a plurality of segments configured to continually collect and store data signals of the electronic circuit. The data signals are collected in a current segment of the plurality of segments. The trigger detection circuit is adapted to provide a trigger signal when a trigger condition is met. Each time upon generation of the trigger signal when the trigger condition is met, the collection of the data signals is stopped in the current segment and subsequent data signals are collected in a new segment of the plurality of segments.
    Type: Grant
    Filed: December 4, 2015
    Date of Patent: April 17, 2018
    Assignee: Cadence Design Systems, Inc.
    Inventor: Alon Kfir
  • Patent number: 9934120
    Abstract: Embodiments of the present disclosure relate to systems and methods for updating a System on Chip (SOC) image without using direct memory access (DMA) programming. A target SOC monitors a target mailbox to determine reception of a data packet of an SOC image received from a host computer, wherein the SOC image includes a plurality of data packets. The target SOC reads the data packet from a buffer of the target SOC and writes a status message to a host mailbox of the target SOC, wherein the status message is indicative of a reception status of the data packet.
    Type: Grant
    Filed: February 10, 2016
    Date of Patent: April 3, 2018
    Assignee: Western Digital Technologies, Inc.
    Inventors: Chuck Chiang, Kishore Kumar Reddy Devireddy
  • Patent number: 9934114
    Abstract: Down-time at switching of systems is reduced in a communication system that implements functional safety communication. Provided are a first preparation part 1222 that, when a functional safety communication initialization sequence is started between a slave and a control-system master, executes a first sequence group consisting of some sequences of the functional safety communication initialization sequence together with the slave; a second preparation part 1223 that executes a second sequence group being a sequence of the functional safety communication initialization sequence other than the first sequence group together with the slave when a failure of the control-system master is detected after execution of the first sequence group is completed; and a control communication control part 110 that starts control communication with the slave after execution of the second sequence group is completed.
    Type: Grant
    Filed: September 26, 2013
    Date of Patent: April 3, 2018
    Assignee: Mistubishi Electric Corporation
    Inventor: Ryohei Kuba
  • Patent number: 9921902
    Abstract: A system and method for providing a watchdog timer to enable collection of crash data is provided. Upon execution of certain operations, a source thread of an application initiates a watchdog thread that periodically sample state of data relating to the application. Should the operation not complete within a watchdog timeout period, the watchdog thread invokes a crash function to collect additional state data. At least a portion of the state data is stored for later analysis and debugging.
    Type: Grant
    Filed: February 29, 2016
    Date of Patent: March 20, 2018
    Inventors: Ryan Perry, Jeffrey Hall Seibert, Jr., Zhen Ma, Matt Massicotte
  • Patent number: 9904607
    Abstract: A controller-implemented method, according to one embodiment, includes: restoring a valid snapshot of a LPT from the non-volatile random access memory, examining each journal entry from at least one journal beginning with a most recent one of the journal entries in a most recent one of the at least one journal and working towards an oldest one of the journal entries in an oldest one of the at least one journal, the journal entries corresponding to updates made to one or more entries of the LPT, determining whether a current LPT entry which corresponds to a currently examined journal entry has already been updated, using the currently examined journal entry to update the current LPT entry in response to determining that the current LPT entry has not already been updated, and discarding the currently examined journal entry in response to determining that the current LPT entry has already been updated.
    Type: Grant
    Filed: November 13, 2015
    Date of Patent: February 27, 2018
    Assignee: International Business Machines Corporation
    Inventors: Charles J. Camp, Timothy J. Fisher, Aaron D. Fry, Nikolas Ioannou, Roman A. Pletka, Lincoln T. Simmons, Sasa Tomic
  • Patent number: 9898368
    Abstract: Methods and apparatus for implementing a recovery mode procedure for a computing device are disclosed. An example method includes determining, by a computing device, that a recovery mode procedure is to be executed on the computing device. The example method further includes, determining whether a trusted recovery image is accessible to the computing device and, in the event the trusted recovery image is accessible to the computing device, executing the recovery mode procedure to repair or replace a current image of the computing device using the trusted recovery image. In the event the trusted recovery image is not accessible to the computing device, the example method includes, providing instructions for obtaining the trusted recovery image, determining the obtained trusted recovery image is accessible to the computing device and executing the recovery mode procedure to repair or replace the current image of the computing device using the obtained trusted recovery image.
    Type: Grant
    Filed: September 8, 2015
    Date of Patent: February 20, 2018
    Assignee: GOOGLE LLC
    Inventors: David Hendricks, Ryan Tabone, Linus Upson, Randall R. Spangler
  • Patent number: 9892009
    Abstract: Systems and methods can use a testing framework for testing an event processing system. The testing framework operates to apply a sliding window on a stream of input events that are sent to an event processing system, wherein said event processing system processes the stream of input events in a batch mode with one or more sliding cycles, and wherein said sliding window includes one or more input events in a sliding cycle that correspond to a plurality of expected output events. Furthermore, the testing framework can receive a plurality of actual output events at an end of said sliding cycle in the batch mode from the event processing system, and uses said one or more expected output events to verify said one or more actual output events.
    Type: Grant
    Filed: February 9, 2015
    Date of Patent: February 13, 2018
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Guan Nan He, Ying Xi
  • Patent number: 9891919
    Abstract: Corruption of program stacks is detected by using guard words placed in the program stacks. A called routine executing on a processor checks a guard word in a stack of a calling routine. The checking determines whether the guard word has an expected value. Based on determining the guard word has an unexpected value, an indication of corruption of the stack is provided. Some routines, however, may not support use of guard words. Thus, routines that are interlinked may have differing protection capabilities. A determination is made as to the differing protection capabilities, an indication of the same is provided, and the routines are executed without failing due to the differing protection capabilities.
    Type: Grant
    Filed: February 27, 2017
    Date of Patent: February 13, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Karl J. Duvalsaint, Michael K. Gschwind, Valentina Salapura
  • Patent number: 9891851
    Abstract: Provided are a computer program product, system, and method for performing a remote point-in-time copy to a source and target storages in further mirror copy relationships. Each of a plurality of source copy relationships is from the source storage to one corresponding source copy storage. Each of a plurality of target copy relationships is from the target storage to one corresponding target copy storage, where in each relationship an indicator indicates whether to use a remote first type copy operation. The first type copy operation is used to copy data from the source storage to the target storage and copy data from the source copy storage to the target copy storage for the determined source and target copy relationships having the indicator set. A second type of copy operations is used for source and target relationships not having the indicator set.
    Type: Grant
    Filed: October 20, 2016
    Date of Patent: February 13, 2018
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Theresa M. Brown, Susan K. Candelaria, Nedlaya Y. Francisco, Lisa J. Gundy, Corey G. Smeaton, Warren K. Stanley, Jeffrey R. Suarez
  • Patent number: 9880970
    Abstract: The present invention describes a new method for implementing highly available data-parallel-operations on a computational grid. This new method provides high availability after a server fails or the grid experiences a partial network failure. The present invention invokes the data parallel operation's method on selected objects stored in partitions within a highly available distributed cache. It thereby takes advantage of the use of highly available data partitions implemented by the distributed cache as a means for reliably tracking the progress of method invocations within a data parallel operation even after a server or network failure occurs. Using the cache's partitions as the basis for tracking enables the present invention's method to restart method invocations and thereby ensure completion of the data-parallel operation. It also uses a completion object within the cache to ensure that completion of the data parallel operation is detected and reported in a highly available manner.
    Type: Grant
    Filed: October 3, 2008
    Date of Patent: January 30, 2018
    Inventor: William L. Bain
  • Patent number: 9870321
    Abstract: A flash memory control technology with high reliability. In a power recovery process, a microcontroller is configured to duplicate a last write page of a run-time write block of a flash memory and thereby generate a duplicated page in the run-time write block. The microcontroller is further configured use the mapping information accessed from the duplicated page in rebuilding a physical-to-logical address mapping table rather than the mapping information accessed from the last write page. The microcontroller is configured to maintain the physical-to-logical address mapping table on a random access memory for the run-time write block and is further configured to use the physical-to-logical address mapping table to update a logical-to-physical address mapping table maintained in the flash memory.
    Type: Grant
    Filed: August 28, 2015
    Date of Patent: January 16, 2018
    Assignee: Silicon Motion, Inc.
    Inventor: Wen-Sheng Lin
  • Patent number: 9864649
    Abstract: Technologies for identification of a potential root cause of a use-after-free memory corruption bug of a program include a computing device to replay execution of the execution of the program based on an execution log of the program. The execution log comprises an ordered set of executed instructions of the program that resulted in the use-after-free memory corruption bug. The computing device compares a use-after-free memory address access of the program to a memory address associated with an occurrence of the use-after-free memory corruption bug in response to detecting the use-after-free memory address access and records the use-after-free memory address access of the program as a candidate for a root cause of the use-after-free memory corruption bug to a candidate list in response to detecting a match between the use-after-free memory address access of the program and the memory address associated with the occurrence of the use-after-free memory corruption bug.
    Type: Grant
    Filed: March 27, 2015
    Date of Patent: January 9, 2018
    Assignee: Intel Corporation
    Inventors: Justin E. Gottschlich, Gilles A. Pokam, Cristiano L. Pereira