Patent ID: 8521939

Claim:
A method of data processing in a data processing system including a processor core, a system memory coupled to the processor core, and an input/output (I/O) subsystem including an input/output (I/O) host bridge and a plurality of partitionable endpoints (PEs), wherein each of the plurality of PEs includes one or more requesters each assigned a respective one of a plurality of requester identifiers (RIDs), and wherein at least one of the plurality of PEs includes an I/O adapter (I/OA), the method comprising: the I/O host bridge receiving I/O messages from the processor core in a register, wherein the I/O messages received from the processor core include interrupt messages; the I/O host bridge receiving I/O messages from the IOA in a buffer, wherein the I/O messages from the processor core and the I/O messages from the IOA each specifies one of the plurality of RIDs assigned within the I/O subsystem and a message body specifying one of a plurality of different I/O message types; the I/O host bridge forming a stream of I/O messages from those received in the register and the buffer; the I/O host bridge servicing I/O messages from the stream, wherein the servicing includes servicing the interrupt messages received from the processor core; and prior to receiving a particular I/O message in the stream from the processor core, the particular I/O message comprising an I/O interrupt message, the I/O host bridge previously receiving the particular I/O message from the I/O subsystem and passing the particular I/O message to the processor core.