System and method for performing driver configuration operations without a system reboot
AssigneeApplied Micro Circuits Corporation
InventorsJeff Byers, Jing Huang, Khosrow Panah
Life of this patent
Estimating the term…
Abstract
A method and apparatus for performing driver configuration operations without a system reboot is disclosed. In one embodiment, a network server's adapter driver receives a request to change a configuration of a selected instance of a plurality of instances. In response, the adapter driver may then determine if there is data flow through the selected instance. If there is no data flow through the selected instance, the method includes blocking subsequent data flow and subsequent information requests issued to the adapter driver. The selected instance may then be reinitializing without rebooting the server.
Claims15
A system comprising:
- a server coupled to a network;
- a network adapter to couple said server to said network, said network adapter having a plurality of adapter ports;
- and
- an adapter driver executing on said server, said adapter driver having a plurality of instances corresponding to said plurality of adapter ports, wherein said adapter driver, in response to a graphical user interface of a driver management application request, selected from a group consisting of a driver parameter update request, a driver unload/load request, and a request to recognize a new device on said network, to change a configuration of a selected instance of said plurality of instances, is to,
- parse a configuration file of said selected instance into a name/value parameter list,
- retrieve a previous initialization time stamp for the selected instance, said previous initialization time stamp to indicate the last time said selected instance was initialized,
- clear a plurality of old driver parameters for said selected instance,
- define a plurality of new driver parameters based on said request for the configuration change,
- request that said adapter driver activate said plurality of new driver parameters,
- determine if there is data flow through the selected instance of said adapter driver, and if not, to
- block all subsequent data flow through the selected instance of said adapter driver,
- block all subsequent information requests to said adapter driver relating to the selected instance,
- reinitialize said selected instance of said plurality of instances without rebooting said server,
- following said reinitialization, request a new initialization time stamp for the selected instance,
- compare said new initialization time stamp to said previous initialization time stamp, and
- if said new initialization time stamp is later than said previous initialization time stamp, indicate that said reinitialization of said selected instance is successful.
A method comprising:
- executing an adapter driver on a server that is coupled to a network, said server being coupled to the network using a network adapter, and said adapter driver having a plurality of instances corresponding to a plurality of adapter ports of said network adapter;
- issuing, by a user using a graphical user interface of a driver management application, a request to change the configuration of said selected instance, wherein said request is one of a driver parameter update request, a driver unload/load request, and a request to recognize a new device on said network;
- parsing, by said driver management application, a configuration file of said selected instance into a name/value parameter list;
- retrieving, by said driver management application, a previous initialization time stamp for the selected instance, said previous initialization time stamp to indicate the last time said selected instance was initialized;
- clearing, by said driver management application, a plurality of old driver parameters for said selected instance;
- defining, by said driver management application, a plurality of new driver parameters based on said request for the configuration change;
- requesting, by said driver management application, that said adapter driver activate said plurality of new driver parameters;
- receiving said request to change a configuration of a selected instance of said plurality of instances;
- determining if there is data flow through the selected instance of said adapter driver;
- blocking, if there is no data flow through the selected instance, all subsequent data flow through the selected instance of said adapter driver;
- blocking, if there is no data flow through the selected instance, all subsequent information requests to said adapter driver relating to the selected instance;
- reinitializing said selected instance of said plurality of instances without rebooting said server;
- following said reinitialization of the selected instance of said plurality of instances, requesting, by said driver management application, a new initialization time stamp for the selected instance;
- comparing said new initialization time stamp to said previous initialization time stamp;
- and
- indicating that said reinitialization of said selected instance is successful if said new initialization time stamp is later than said previous initialization time stamp.
A computer program product comprising:
- a processor readable medium including a computer readable medium having stored therein:
- computer readable program code to execute an adapter driver on a server that is coupled to a network, said server being coupled to the network using a network adapter, and said adapter driver having a plurality of instances corresponding to a plurality of adapter ports of said network adapter;
- computer readable program code to issue, by a user using a graphical user interface of a driver management application, a request to change a configuration of said selected instance, wherein said request for the configuration change is one of a driver parameter update request, a driver unload/load request, and a request to recognize a new device on said network;
- computer readable program code to retrieve, by said driver management application, a configuration file of said selected instance into a name/value parameter list;
- computer readable program code to retrieve, by said driver management application, a previous initialization time stamp for the selected instance, said previous initialization time stamp to indicate the last time said selected instance was initialized;
- computer readable program code to clear, by said driver management application, a plurality of old driver parameters for said selected instance;
- computer readable program code to define, by said driver management application, a plurality of new driver parameters based on said request for the configuration change;
- computer readable program code to request, by said driver management application, that said adapter driver activate said plurality of new driver parameters;
- computer readable program code to receive the request to change a configuration of a selected instance of said plurality of instances;
- computer readable program code to determine if there is data flow through the selected instance of said adapter driver,
- computer readable program code to block, if there is no data flow through the selected instance, all subsequent data flow through the selected instance of said adapter driver;
- computer readable program code to block, if there is no data flow through the selected instance, all subsequent information requests to said adapter driver relating to the selected instance;
- computer readable program code to reinitialize said selected instance of said plurality of instances without rebooting said server;
- following said computer readable program code to reinitialize said selected instance, computer readable program code to request, by said driver management application, a new initialization time stamp for the selected instance;
- computer readable program code to compare said new initialization time stamp to said previous initialization time stamp;
- and
- computer readable program code to indicate that said reinitialization of said selected instance is successful if said new initialization time stamp is later than said previous initialization time stamp.
Dependencies are inferred from the claim text.