Communications between partitioned host processors and management processor
First Claim
1. For use in a computer system having at least two HOST processors and at least one MIP management processor, a communications system for supporting communications between the MIP management processor and partition-identifiable ones of said at least two HOST processors comprising:
- a main memory system accessible by all of the at least one HOST processors;
a set of relocatable mailbox pairs, each said mailbox pair for establishing a communications channel between said partition-identifiable ones of said at least two HOST processors and said MIP management processor, each of said set of mailbox pairs including two mailbox memory locations within said main memory system, and arranged to form a first mailbox being accessible for writing data to it by said one of said at least two HOST processors and a second mailbox being accessible for writing data to it only by said MIP management processor, and a protocol for communicating between the MIP management processor and said one said at least two HOST processors through said communications channel, said protocol including at least a message pair for each communication wherein each message pair comprises a request message and a reply message, wherein both'"'"'the request and the reply messages of a message pair in any said each communication comprises code written to said first mailbox by a HOST processor when a message in said pair is to be transmitted from a HOST processor to said MIP management processor, and code to be written to said second mailbox by the MIP management processor when a message in said pair is to be transmitted from the MIP management processor to said one of said at least two HOST processors, and wherein said written code includes a validity signal indicating message validity for any instantiation, a function signal indicating a message function for any instantiation of any request message, and either data signals representing message function-mediating information or a pointer to an address in said main memory where such function-mediating information can be found.
9 Assignments
0 Petitions
Accused Products
Abstract
An inventive protocol for communicating between a management processor and host processors allows for the cooperative management of resources among host processors within a partition and also among a set of partitions in a computer system, wherein each partition may function under an instantiation of an operating system with a group of host processors. The protocol employs a message passing system using mailbox pairs in fixed but moveable or relocatable locations within the computer system shared memory. The messages share a format having specific codes or descriptors that act as codes for coordination of message interpretation. These codes include at least a validity flag and a sequence enumerator, and in a response message of a request/response message pair, a status indicator. Additionally, routing codes and function codes and code modifiers may be provided. Specific implementation details and messages are described to enable the smooth functioning of complex multiprocessor systems.
108 Citations
23 Claims
-
1. For use in a computer system having at least two HOST processors and at least one MIP management processor, a communications system for supporting communications between the MIP management processor and partition-identifiable ones of said at least two HOST processors comprising:
-
a main memory system accessible by all of the at least one HOST processors;
a set of relocatable mailbox pairs, each said mailbox pair for establishing a communications channel between said partition-identifiable ones of said at least two HOST processors and said MIP management processor, each of said set of mailbox pairs including two mailbox memory locations within said main memory system, and arranged to form a first mailbox being accessible for writing data to it by said one of said at least two HOST processors and a second mailbox being accessible for writing data to it only by said MIP management processor, and a protocol for communicating between the MIP management processor and said one said at least two HOST processors through said communications channel, said protocol including at least a message pair for each communication wherein each message pair comprises a request message and a reply message, wherein both'"'"'the request and the reply messages of a message pair in any said each communication comprises code written to said first mailbox by a HOST processor when a message in said pair is to be transmitted from a HOST processor to said MIP management processor, and code to be written to said second mailbox by the MIP management processor when a message in said pair is to be transmitted from the MIP management processor to said one of said at least two HOST processors, and wherein said written code includes a validity signal indicating message validity for any instantiation, a function signal indicating a message function for any instantiation of any request message, and either data signals representing message function-mediating information or a pointer to an address in said main memory where such function-mediating information can be found. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
(NOP, Save CMOS Image, BIOS to OS Transition, Release APs, Switch to Partition Mailbox, Load Code, Map Memory, Shadow ROM, Cluster Check-in Complete, Report Fault, Write Protect BIOS/Extended BIOS Area, Switch to APIC Mode, Enable Unsolicited Messages, Enable MIP Interrupts, Heartbeat, Heartbeat Enable, MIP I/O Redirection Table—
Modify, Select Sub-POD for lowest Priority, Shutdown, Change Partitioning State, Request Unit Configuration Data &
Status, Request Attributes—
Shared Memory, Move Mailbox, Negotiate Mailbox Version, Save and Distribute Partition Data, Request Partition Data, Report Event to MIP for Notification, Software Check-in, Request Down Memory Ranges),and wherein said MIP to HOST message include at least 2 MIP to HOST messages, drawn from the list of reply messages comprising;
(Become AP, Become BSP, Orderly Halt, MAP available, Request Partitioning Change, Down Memory Range Notification, Host Notification—
Shared Memory, Notification of Configuration Change, Partition Data Notification, Report Fault).
-
-
13. A method for communicating between a management processor and any partition-identifiable host processor in a multi-host multiprocessor computer system comprising:
-
establishing a mailbox pair as memory locations in a shared main memory shared by said multi-host multiprocessor computer system, for handling message traffic between said management processor and one of said host processors, a first box of said pair for receiving messages only from said management processor and for being read by said one of said host processors, and a second box of said pair for receiving messages from said one to said host processors and for being read by said management processor, before writing a request message into either said first or second box, checking to see if the box is available, writing by a request message into the box checked in the previous action, if said box is available, or checking again until it is available or until a timeout, reading, responsive to a self-directed polling process, from the mailbox by said processor HOST or MIP that did not write said request message into the box, acting on information in said request message by the processor that read said request message and replying by the processor that read said request message by writing a response message into the other of said boxes. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
resetting a valid bit in said request message by the processor that reads said request message.
-
-
15. The method of claim 13 wherein said act of establishing comprises establishing a unique mailbox pair in said shared memory for each host.
-
16. The method of claim 13 wherein said step of replying further comprises, first checking the one of said first or second boxes which will be used by the processor writing the reply message to see if the box is available.
-
17. The method of claim 13 wherein the request message written by the host is a request to the management processor to save an image file of the host CMOS memory information, and wherein the request message written contains an address for a buffer in said main memory where said host has written a copy of its CMOS memory, and wherein said management processor'"'"'s responsive action is saving said image file of said buffer in a management processor memory.
-
18. The method of claim 13 wherein the request message written by the host is a request to the management processor to report unit configuration data and status, and wherein the request message written contains an address for a buffer in said main memory where said host has written a list of units being inquired about, and wherein said management processor'"'"'s action is to place answers to the query for the units referred to in said buffer in a second buffer, and wherein said management reply message is written with an address for said second buffer.
-
19. The method of claim 13 wherein the request message written by the host is a request to the management processor to report memory unit attributes, and wherein the request message written contains an indication of which memory units are subject to this request message, and wherein said management processor'"'"'s action is to place answers to the query for the units referred to in a buffer, and wherein said management reply message is written with an address for said buffer.
-
20. The method of claim 13 wherein the request message written by the host is a request to the management processor to negotiate mailbox communications level version, and wherein the request message written a highest level version which said host is capable of using, and wherein said management processor'"'"'s action is to write in a reply message which version is accepted by said management processor and its associated software.
-
21. The method of claim 13 wherein said messages written by the Host operate to perform a function within the computer system, said function described by names of messages in the list of messages comprising;
-
(NOP, Save CMOS Image, BIOS to OS Transition, Release APs, Switch to Partition Mailbox, Load Code, Map Memory, Shadow ROM, Cluster Check-in Complete, Report Fault, Write Protect BIOS/Extended BIOS Area, Switch to APIC Mode, Enable Unsolicited Messages, Enable MIP Interrupts, Heartbeat, Heartbeat Enable, MIP I/O Redirection Table—
Modify, Select Sub-POD for lowest Priority, Shutdown, Change Partitioning State, Request Unit Configuration Data &
Status, Request Attributes—
Shared Memory, Move Mailbox, Negotiate Mailbox Version, Save and Distribute Partition Data, Request Partition Data, Report Event to MIP for Notification, Software Check-in, Request Down Memory Ranges),and wherein said messages written by the MIP wherein said messages written by the Host operate to perform a function within the computer system, said function described by names of messages in the list of messages comprising;
(Become AP, Become BSP, Orderly Halt, MAP available, Request Partitioning Change, Down Memory Range Notification, Host Notification—
Shared Memory, Notificaton of Configuration Change, Partition Data Notification, Report Fault).
-
-
22. A messaging protocol for communications between a host processor and a management processor in a computer system wherein:
-
all host processors in said system share a common main memory, said protocol relying on individual communications channels between each host processor and said management processor, wherein each said channel comprises a pair of mailboxes, a first box of said pair being for one of the host processor'"'"'s outbound communications messages to said management processor, and a second box of said pair being for outbound communications messages from said management processor to said one of the host processors, and wherein mailbox pair for said one of the host processors is located in a partition controlled by said one of the host processors, the messages in said protocol comprising paired messages, wherein outbound messages from a host processor are not equivalent to the outbound messages from the management processor, but wherein there are at least four forms of message pairs, each pair having a request message and a reply message, a first form being a request message having no pointer to a buffer paired with a reply message with a pointer to a buffer, a second form being a request message having a pointer to a buffer paired with a reply message having a pointer to a buffer, a third message pair being a request message having no pointer to a buffer being paired with a reply message having no pointer to a buffer, and a fourth form having a request message with a pointer to a buffer being paired with a reply message having no pointer to a buffer. - View Dependent Claims (23)
(NOP, Save CMOS Image, BIOS to OS Transition, Release APs, Switch to Partition Mailbox, Load Code, Map Memory, Shadow ROM, Cluster Check-in Complete, Report Fault, Write Protect BIOS/Extended BIOS Area, Switch to APIC Mode, Enable Unsolicited Messages, Enable MIP Interrupts, Heartbeat, Heartbeat Enable, MIP I/O Redirection Table—
Modify, Select Sub-POD for lowest Priority, Shutdown, Change Partitioning State, Request Unit Configuration Data &
Status, Request Attributes—
Shared Memory, Move Mailbox, Negotiate Mailbox Version, Save and Distribute Partition Data, Request Partition Data, Report Event to MIP for Notification, Software Check-in, Request Down Memory Ranges),and wherein said MIP outbound request messages are drawn from a list comprising at least 2 messages, drawn from the list of reply messages comprising;
(Become AP, Become BSP, Orderly Halt, MAP available, Request Partitioning Change, Down Memory Range Notification, Host Notification—
Shared Memory, Notification of Configuration Change, Partition Data Notification, Report Fault).
-
Specification