Patents by Inventor Brent Kingsbury
Brent Kingsbury 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: 8560524Abstract: One embodiment is a server in a cluster storage system. The server includes a Global Lock Manager (GLM) that receives requests for lock priorities for transactions from local lock manager (LLMs) in the cluster storage system. The GLM prevents deadlocks in the cluster storage system by issuing groups of priorities for transactions to the LLMs.Type: GrantFiled: October 30, 2008Date of Patent: October 15, 2013Assignee: Hewlett-Packard Development Company, L.P.Inventors: Brent A. Kingsbury, Terence M Rokop
-
Publication number: 20100114849Abstract: One embodiment is a server in a cluster storage system. The server includes a Global Lock Manager (GLM) that receives requests for lock priorities for transactions from local lock manager (LLMs) in the cluster storage system. The GLM prevents deadlocks in the cluster storage system by issuing groups of priorities for transactions to the LLMs.Type: ApplicationFiled: October 30, 2008Publication date: May 6, 2010Inventors: Brent A. Kingsbury, Terence M. Rokop
-
Patent number: 7472233Abstract: Methods for dynamically allocating memory in a multiprocessor computer system such as a non-uniform memory access (NUMA) machine having distributed shared memory. The methods include allocating memory by specified node, memory class, or memory pool in response to requests by the system (kernel memory allocation) or a user (application memory allocation). Through these methods memory is allocated more efficiently in a NUMA machine. For example, allocating memory on a specified node in a NUMA machine, such as the same node on which a process requiring the memory is running, reduces memory access time. Allocating memory from a specified memory class allows device drivers with restricted DMA ranges to operate with dynamically allocated memory. Other benefits of these methods include minimizing expensive remote-memory accesses using a distributed reference count mechanism and lock-free cache access.Type: GrantFiled: April 30, 2004Date of Patent: December 30, 2008Assignee: International Business Machines CorporationInventors: Paul E. McKenney, Phillip E. Krueger, Stuart A. Friedberg, Brent A. Kingsbury
-
Patent number: 7467330Abstract: A system and method are disclosed for providing journal recovery in a multi-node environment which comprises determining whether a block was updated by a first node; determining whether the block is associated with a lock held by a second node; and writing the block to a final location if the block is not associated with a lock held by the second node.Type: GrantFiled: August 4, 2006Date of Patent: December 16, 2008Assignee: Hewlett-Packard Development Company, L.P.Inventors: Brent A. Kingsbury, Sam Revitch, Terence M. Rokop
-
Patent number: 7437386Abstract: A system and method are disclosed for providing multi-node environment comprising a first node associated with a first operating system; a second node associated with a second operating system, wherein the second operating system is independent of the first operating system; a storage; and an interconnect coupling the first node with the storage and coupling the second node with the storage; and wherein the first node directly accesses the storage and the second node directly accesses the storage.Type: GrantFiled: September 20, 2002Date of Patent: October 14, 2008Assignee: Hewlett-Packard Development Company, L.P.Inventors: Michael J. Callahan, Corene Casper, Kenneth F. Dove, Brent A. Kingsbury, Phil E. Krueger, Terence M. Rokop, Michael J. Spitzer
-
Patent number: 7266722Abstract: A system and method are disclosed for providing a system and method for an efficient lock recovery. In one embodiment of the present invention, a multiple node networked system shares a resource such a shared storage. Among various other aspects of the present invention, when there is a change, such as a server failure, that prompts a recovery, the recovery can be performed in parallel among the nodes. A further aspect of an embodiment of the present invention includes recovering a lock with a higher level of exclusion prior to another lock with a lower level of exclusion.Type: GrantFiled: September 20, 2002Date of Patent: September 4, 2007Assignee: Hewlett-Packard Development Company, L.P.Inventor: Brent A. Kingsbury
-
Patent number: 7240057Abstract: A system and method are disclosed for providing journaling in a computer environment. An embodiment of the present invention comprises providing a first node and a second node; providing a journal wherein the journal is accessible by the first node and the second node; requesting a change in lock status by the first node; and executing a task by the second node in response to the request for the change in lock status by the first node.Type: GrantFiled: September 20, 2002Date of Patent: July 3, 2007Inventors: Brent A. Kingsbury, Sam Revitch, Terence M. Rokop
-
Publication number: 20070033436Abstract: A system and method are disclosed for providing journal recovery in a multi-node environment which comprises determining whether a block was updated by a first node; determining whether the block is associated with a lock held by a second node; and writing the block to a final location if the block is not associated with a lock held by the second node.Type: ApplicationFiled: August 4, 2006Publication date: February 8, 2007Inventors: Brent Kingsbury, Sam Revitch, Terence Rokop
-
Patent number: 7111197Abstract: A system and method are disclosed for providing journal recovery in a multi-node environment which comprises determining whether a block was last updated by a first node; determining whether the block is associated with a lock held by a second node; and writing the block to a final location if the block is not associated with a lock held by the second node. In another embodiment, a system and method are disclosed for providing journal recovery in a multi-node environment which comprises determining whether a block is associated with metadata; determining whether the block is associated with a lock held by a surviving node; and writing the block to a final location if the block is not associated with a lock held by the surviving node.Type: GrantFiled: September 20, 2002Date of Patent: September 19, 2006Assignee: PolyServe, Inc.Inventors: Brent A. Kingsbury, Sam Revitch, Terence M. Rokop
-
Publication number: 20050015640Abstract: A system and method are disclosed for providing journal recovery in a multi-node environment which comprises determining whether a block was last updated by a first node; determining whether the block is associated with a lock held by a second node; and writing the block to a final location if the block is not associated with a lock held by the second node. In another embodiment, a system and method are disclosed for providing journal recovery in a multi-node environment which comprises determining whether a block is associated with metadata; determining whether the block is associated with a lock held by a surviving node; and writing the block to a final location if the block is not associated with a lock held by the surviving node.Type: ApplicationFiled: September 20, 2002Publication date: January 20, 2005Inventors: Brent Kingsbury, Sam Revitch, Terence Rokop
-
Patent number: 6823511Abstract: A reader-writer lock minimizes writer and reader overhead by employing lock structures that are shared among groups of processors that have lower latencies. In the illustrated multiprocessor system having a non-uniform memory access (NUMA) architecture, each processor node has a lock structure comprised of a shared counter and associated flag for each CPU group. During a read, the counter can be changed only by processors within a CPU group performing a read. This reduces the reader overhead that otherwise would exist if all processors in the system shared a single counter. During a write, the shared flag can be changed by a process running on any processor in the system. The processors in a CPU group are notified of the write through the shared flag. This reduces the writer overhead that otherwise would exist if each processor in the system had a separate flag. The number of CPUs per group can be varied to optimize performance of the lock in different multiprocessor systems.Type: GrantFiled: January 10, 2000Date of Patent: November 23, 2004Assignee: International Business Machines CorporationInventors: Paul E. McKenney, Brent Kingsbury
-
Publication number: 20040205304Abstract: Methods for dynamically allocating memory in a multiprocessor computer system such as a non-uniform memory access (NUMA) machine having distributed shared memory. The methods include allocating memory by specified node, memory class, or memory pool in response to requests by the system (kernel memory allocation) or a user (application memory allocation). Through these methods memory is allocated more efficiently in a NUMA machine. For example, allocating memory on a specified node in a NUMA machine, such as the same node on which a process requiring the memory is running, reduces memory access time. Allocating memory from a specified memory class allows device drivers with restricted DMA ranges to operate with dynamically allocated memory. Other benefits of these methods include minimizing expensive remote-memory accesses using a distributed reference count mechanism and lock-free cache access.Type: ApplicationFiled: April 30, 2004Publication date: October 14, 2004Inventors: Paul E. McKenney, Phillip E. Krueger, Stuart A. Friedberg, Brent A. Kingsbury
-
Publication number: 20040202013Abstract: A system and method are disclosed for accessing data in a multi-node system comprising providing a first node associated with a first operating system; providing a second node associated with a second operating system, wherein the second operating system is independent of the first operating system; providing a storage, wherein the first node directly accesses the storage and the second node directly accesses the storage; requesting a lock for a block by the first node to the second node; obtaining the lock from the second node; and obtaining the block the from the second node.Type: ApplicationFiled: September 20, 2002Publication date: October 14, 2004Applicant: PolyServe, Inc.Inventors: Kenneth F. Dove, Brent A. Kingsbury, Sam Revitch, Terence M. Rokop
-
Patent number: 6785888Abstract: Methods for dynamically allocating memory in a multiprocessor computer system such as a non-uniform memory access (NUMA) machine having distributed shared memory. The methods include allocating memory by specified node, memory class, or memory pool in response to requests by the system (kernel memory allocation) or a user (application memory allocation). Through these methods memory is allocated more efficiently in a NUMA machine. For example, allocating memory on a specified node in a NUMA machine, such as the same node on which a process requiring the memory is running, reduces memory access time. Allocating memory from a specified memory class allows device drivers with restricted DMA ranges to operate with dynamically allocated memory. Other benefits of these methods include minimizing expensive remote-memory accesses using a distributed reference count mechanism and lock-free cache access.Type: GrantFiled: February 24, 1998Date of Patent: August 31, 2004Assignee: International Business Machines CorporationInventors: Paul E. McKenney, Phillip E. Krueger, Stuart A. Friedberg, Brent A. Kingsbury
-
Patent number: 6629152Abstract: A lock-free mechanism is provided for successfully passing messages between processes even if a process is preempted while sending or receiving a message. Messages are communicated between processes using a mailbox data structure stored in memory shared by the processes, without the use of locks or other mutual exclusion entities that would otherwise limit concurrent delivery and receipt of messages placed in the data structure. The data structure in the illustrative embodiment includes one or more message slots for storing messages placed in the data structure and a number of state variables for inserting messages into and removing messages from the message slots. A process sends or retrieves messages by manipulating the state variables using indivisible atomic operations. This ensures that a process cannot be preempted from message passing until it finishes executing the atomic instruction.Type: GrantFiled: June 29, 1998Date of Patent: September 30, 2003Assignee: International Business Machines CorporationInventors: Brent A. Kingsbury, Jean-Marie Christian Sulmont, Paul E. McKenney
-
Publication number: 20030079155Abstract: A system and method are disclosed for providing a system and method for an efficient lock recovery. In one embodiment of the present invention, a multiple node networked system shares a resource such a shared storage. Among various other aspects of the present invention, when there is a change, such as a server failure, that prompts a recovery, the recovery can be performed in parallel among the nodes. A further aspect of an embodiment of the present invention includes recovering a lock with a higher level of exclusion prior to another lock with a lower level of exclusion.Type: ApplicationFiled: September 20, 2002Publication date: April 24, 2003Applicant: PolyServe, Inc.Inventor: Brent A. Kingsbury
-
Publication number: 20030065686Abstract: A system and method are disclosed for providing multi-node environment comprising a first node associated with a first operating system; a second node associated with a second operating system, wherein the second operating system is independent of the first operating system; a storage; and an interconnect coupling the first node with the storage and coupling the second node with the storage; and wherein the first node directly accesses the storage and the second node directly accesses the storage.Type: ApplicationFiled: September 20, 2002Publication date: April 3, 2003Applicant: PolyServe, Inc.Inventors: Michael J. Callahan, Corene Casper, Kenneth F. Dove, Brent A. Kingsbury, Phil E. Krueger, Terence M. Rokop, Michael J. Spitzer
-
Publication number: 20030065672Abstract: A system and method are disclosed for providing journaling in a computer environment. An embodiment of the present invention comprises providing a first node and a second node; providing a journal wherein the journal is accessible by the first node and the second node; requesting a change in lock status by the first node; and executing a task by the second node in response to the request for the change in lock status by the first node.Type: ApplicationFiled: September 20, 2002Publication date: April 3, 2003Applicant: PolyServe, Inc.Inventors: Brent A. Kingsbury, Sam Revitch, Terence M. Rokop
-
Publication number: 20030061395Abstract: A lock-free mechanism is provided for successfully passing messages between processes even if a process is preempted while sending or receiving a message. Messages are communicated between processes using a mailbox data structure stored in memory shared by the processes, without the use of locks or other mutual exclusion entities that would otherwise limit concurrent delivery and receipt of messages placed in the data structure. The data structure in the illustrative embodiment includes one or more message slots for storing messages placed in the data structure and a number of state variables for inserting messages into and removing messages from the message slots. A process sends or retrieves messages by manipulating the state variables using indivisible atomic operations. This ensures that a process cannot be preempted from message passing until it finishes executing the atomic instruction.Type: ApplicationFiled: June 29, 1998Publication date: March 27, 2003Inventors: BRENT A. KINGSBURY, JEAN-MARIE CHRISTIAN SULMONT, PAUL E. MCKENNEY
-
Patent number: 6505286Abstract: A method for a user process to specify a policy for allocating pages of physical memory on the nodes of a multinode multiprocessor computer system. Through means such as a system call, an application program can specify to the operating system that physical pages of memory for an application-specified portion of virtual address space are to be physically allocated upon a specified set of nodes, subject to the additional selection criteria that the pages are to be allocated at first reference upon: 1) the node upon which the reference first occurs; 2) the node which has the most free memory, or 3) that the pages should be evenly distributed across the indicated set of nodes. In effect, the operating system remembers the specified allocation policy and node set from which the physical pages can be subsequently allocated as established by a system call. Subsequent use of the virtual address space for which the allocation policy is defined results in the memory being allocated accordingly.Type: GrantFiled: September 22, 2000Date of Patent: January 7, 2003Assignee: International Business Machines CorporationInventors: Brent A. Kingsbury, Corene Casper, Phillip E. Krueger, Paul E. McKenney