IP Library Granted Patent US 9,678,914
Granted Patent B2
US 9,678,914 · App. 14/184,138 · Granted Jun 13, 2017

Hot removing an I/O module with multiple hot plug slots

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,678,914
App. No.
14/184,138
Granted
Jun 13, 2017
Kind
B2
Abstract

In a method for ejecting a plurality of hot plug slots sharing a power controller, a processor receives a request to eject a plurality of hot plug slots, wherein the plurality of hot plug slots share a power controller and have at least two adapters present. A processor causes an OS to incrementally eject the at least two adapters, wherein ejecting an adapter comprises the OS stopping at least one driver of the adapter, and the OS generating a request to remove power from a hot plug slot. Responsive to a request by the OS to remove power from a hot plug slot, a processor generates a signal that prevents the OS from recognizing the adapter is present in the hot plug slot. Responsive to all device drivers for the at least two adapters being stopped, a processor causes power to be removed from the plurality of hot plug slots.

Claims (32)

1. A method comprising:

receiving, by one or more processors, a request to eject a plurality of hot plug slots from an attention button included on a removable module, wherein the plurality of hot plug slots share a power controller, have at least two adapters present, and are located on the removable module;

receiving, by a plurality of hot plug controllers which control the plurality of hot plug slots, a signal from the attention button;

instructing, by one or more processors, an operating system to eject the at least two adapters present in the plurality of hot plug slots, wherein ejecting an adapter present in a hot plug slot comprises the operating system stopping at least one driver of the adapter, and the operating system generating a request to remove power from the hot plug slot;

responsive to a request by the operating system to remove power from a hot plug slot of the plurality of hot plug slots, generating, by one or more processors, a signal that prevents the operating system from recognizing that the adapter is present in the hot plug slot; and

responsive to all device drivers for each of the at least two adapters present in the plurality of hot plug slots being stopped, causing power to be removed from the plurality of hot plug slots.

2. The method of claim 1 , wherein each hot plug slot of the plurality of hot plug slots is a PCIe slot.

3. The method of claim 1 , wherein the signal is a PERST# signal.

4. The method of claim 1 , further comprising:

each hot plug controller sending an interrupt to the operating system in response to receiving a signal from the attention button; and

the operating system obtaining a hot removal request from a register of one of the hot plug controllers in response to receiving the interrupt.

5. A computer program product comprising:

one or more non-transitory computer readable storage media and program instructions stored on the one or more non-transitory computer readable storage media, the program instructions are executable by a processor, the program instructions comprising:

program instructions to receive a request to eject a plurality of hot plug slots from an attention button included on a removable module, wherein the plurality of hot plug slots share a power controller, have at least two adapters present, and are located on a removable module;

program instructions to receive, by a plurality of hot plug controllers which control the plurality of hot plug slots, a signal from the attention button;

program instructions to instruct an operating system to eject the at least two adapters present in the plurality of hot plug slots, wherein ejecting an adapter present in a hot plug slot comprises the operating system stopping at least one driver of the adapter, and the operating system generating a request to remove power from the hot plug slot;

program instructions to, responsive to a request by the operating system to remove power from a hot plug slot of the plurality of hot plug slots, generate a signal that prevents the operating system from recognizing that the adapter is present in the hot plug slot; and

program instructions to, responsive to all device drivers for each of the at least two adapters present in the plurality of hot plug slots being stopped, cause power to be removed from the plurality of hot plug slots.

6. The computer program product of claim 5 , wherein each hot plug slot of the plurality of hot plug slots is a PCIe slot.

7. The computer program product of claim 5 , wherein the signal is a PERST# signal.

8. The computer program product of claim 5 , further comprising:

program instructions to instruct each hot plug controller to send an interrupt to the operating system in response to receiving a signal from the attention button; and

program instructions to instruct the operating system to obtain a hot removal request from a register of one of the hot plug controllers in response to receiving the interrupt.

9. A computer system comprising:

one or more processors, one or more computer readable memories, one or more computer readable storage media, and program instructions stored on at least one of the one or more computer readable storage media for execution by at least one of the one or more processors via at least one of the one or more computer readable memories, the program instructions comprising:

program instructions to receive a request to eject a plurality of hot plug slots from an attention button included on a removable module, wherein the plurality of hot plug slots share a power controller, have at least two adapters present, and are located on a removable module;

program instructions to receive, by a plurality of hot plug controllers which control the plurality of hot plug slots, a signal from the attention button;

program instructions to instruct an operating system to eject the at least two adapters present in the plurality of hot plug slots, wherein ejecting an adapter present in a hot plug slot comprises the operating system stopping at least one driver of the adapter, and the operating system generating a request to remove power from the hot plug slot;

program instructions to, responsive to a request by the operating system to remove power from a hot plug slot of the plurality of hot plug slots, generate a signal that prevents the operating system from recognizing that the adapter is present in the hot plug slot; and

program instructions to, responsive to all device drivers for each of the at least two adapters present in the plurality of hot plug slots being stopped, cause power to be removed from the plurality of hot plug slots.

10. The computer system of claim 9 , wherein each hot plug slot of the plurality of hot plug slots is a PCIe slot.

11. The computer system of claim 9 , wherein the signal is a PERST# signal.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2025
From: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LIMITED
To: LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
Reel/Frame 069869/0614 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2019
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD.
To: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LTD
Reel/Frame 050298/0650 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
Reel/Frame 034194/0111 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 19, 2014
From: BASS, ROBERT H.; ORITA, RYUJI; SHAH, MEHUL M.; WIWEL, TIMOTHY M.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 032246/0903 →