Delaying loading of host-side drivers for cluster resources to avoid communication failures
AssigneeIntel Corporation
InventorRajesh R. Shah
Life of this patent
Estimating the term…
Abstract
A cluster includes hosts, a fabric including switches with forwarding tables, and I/O enclosures. I/O controllers that are within the I/O enclosures are assigned to the hosts by a subnet manager. A fabric control driver within each host determines a list of drivers which correspond to the I/O controllers assigned to the host and that need to be loaded into the host. Before loading the drivers into the host, the fabric control driver sends a verification message for each driver to the I/O enclosure containing the I/O controller that corresponds to the driver. As responses to the verification messages are received, the fabric control driver loads drivers and modifies the list of drivers accordingly.
Claims19
A method of loading a driver into a host coupled to an interconnection fabric including a fabric-attached I/O enclosure comprising:
- assigning a fabric-attached I/O controller that is within said fabric-attached I/O enclosure to the host;
- determining the driver to be loaded into the host;
- before loading the driver for said fabric-attached I/O controller into the host, sending a verification message to said fabric-attached I/O controller from a fabric control driver of the host via the interconnection fabric to determine whether a communication path exists including determining if a local channel adapter port in the host is initialized and connected from the host to the fabric-attached I/O controller within the fabric-attached I/O enclosure;
- and
- if the fabric-attached I/O enclosure responds to the verification message, then loading the driver into the host.
A method of loading a list of plurality of drivers in a plurality of hosts coupled to an interconnection fabric including a plurality of fabric-attached I/O enclosures, comprising:
- assigning a plurality of fabric-attached I/O controllers that are within the plurality of fabric-attached I/O enclosures to the plurality of hosts;
- determining a list of a plurality of drivers to be loaded into the plurality of hosts, the list of plurality of drivers corresponding to the plurality of fabric-attached I/o controllers;
- before loading the list of plurality of drivers into the plurality of hosts, for each of the driver in the list of plurality of drivers, sending a verification message to one of the plurality of fabric-attached I/O controllers that corresponds to the driver in list of plurality of drivers from a fabric control driver to determine if a local channel adapter port in the host is initialized and connected to the interconnection fabric;
- and
- modifying the list of plurality of drivers based on a reply received in response to the verification message.
A computer readable medium having stored thereon instructions which, when executed by a processor, cause the processor to perform a method for loading a plurality of drivers into a plurality of hosts coupled to an interconnection fabric including a plurality of fabric-attached I/O enclosures, said method comprising:
- assigning a plurality of fabric-attached I/O controllers that are within the plurality of fabric-attached I/O enclosures to the plurality of hosts;
- determining a list of the plurality of drivers that correspond to the plurality of fabric-attached I/O controllers to be loaded into the plurality of hosts;
- before loading any of the plurality of drivers into the plurality of hosts, for each of the plurality of drivers, sending a verification message to a corresponding fabric-attached I/O controller from a fabric control driver of one of the plurality of hosts to determine if a local channel adapter port in one of the plurality of host is initialized and connected to the interconnection fabric;
- and
- modifying the list of plurality of drivers based on a reply received in response to the verification message.
A network comprising:
- an interconnection fabric;
- a host comprising an operating system and at least one host-fabric adapter of the host provided to interface with the interconnection fabric;
- a fabric-attached I/O enclosure including at least one fabric-attached I/O controller assigned to the host and attached to the interconnection fabric;
- wherein, for a given host-fabric adapter of the at least one host-fabric adapter, and for a given fabric-attached I/O controller of the at least one fabric-attached I/O controller, the operating system within the host:
- determines if the given host-fabric adapter has been initialized and connected for fabric communication by sending verification messages from a fabric control driver of the host to the at least one fabric-attached I/O controller;
- and
- if the given host-fabric adapter has been initialized and connected for fabric communication, loading a driver that corresponds to the given fabric-attached I/O controller assigned to the host, into the host for communication with the at least one fabric-attached I/O controller, via the interconnection fabric.
Dependencies are inferred from the claim text.