US7506214B2 - Application for diagnosing and reporting status of an adapter - Google Patents

Application for diagnosing and reporting status of an adapter Download PDF

Info

Publication number
US7506214B2
US7506214B2 US10/829,832 US82983204A US7506214B2 US 7506214 B2 US7506214 B2 US 7506214B2 US 82983204 A US82983204 A US 82983204A US 7506214 B2 US7506214 B2 US 7506214B2
Authority
US
United States
Prior art keywords
adapter
service application
service
external device
status
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related, expires
Application number
US10/829,832
Other versions
US20050257100A1 (en
Inventor
Debbie Ann Anglin
Howard Neil Anglin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to US10/829,832 priority Critical patent/US7506214B2/en
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: ANGLIN, DEBBIE ANN, ANGLIN, HOWARD NEIL
Publication of US20050257100A1 publication Critical patent/US20050257100A1/en
Application granted granted Critical
Publication of US7506214B2 publication Critical patent/US7506214B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0745Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0748Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a remote unit communicating with a single-box computer node experiencing an error/fault
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2294Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program

Definitions

  • the present invention relates generally to the data processing field, and, more particularly, to a method, apparatus and system for analyzing and reporting the status of an adapter in a data processing system.
  • various diagnostic procedures can be performed to capture data needed to analyze and correct the problem. For example, when an adapter problem is encountered, a developer or a manufacturer may wish to dump specific controller chip registers or configuration registers on the adapter, or to change the values of certain registers, to see if the problem will disappear; or, at least, to obtain a better understanding of the nature of the problem.
  • a device driver Often, more than one version of a device driver must be provided to enable an adapter problem to be fully analyzed. For example, during debugging of a system under development, a developer is often required to provide numerous versions of a device driver in order to capture all the data needed to fully understand and solve a particular problem; and this can become a very time consuming task.
  • the present invention provides a method, apparatus, system and computer program product for analyzing and reporting the status of an adapter in a data processing system.
  • the system includes a service application that provides a variety of service functions to permit data to be captured regarding the status of the adapter, and a communication structure to permit data to be transmitted to and received from the service application.
  • the analyzing and reporting system of the invention facilitates the reporting and diagnosis of adapter problems so that encountered problems can be better understood and more easily corrected.
  • FIG. 1 is a pictorial representation of a network of data processing systems in which the present invention may be implemented
  • FIG. 2 is a block diagram of a data processing system that may be implemented as a server in the network of data processing systems of FIG. 1 ;
  • FIG. 3 is a block diagram of a data processing system that may be implemented as a client in the network of data processing systems of FIG. 1 ;
  • FIG. 4 is a block diagram of a system for analyzing and reporting the status of an adapter in a data processing system in accordance with a preferred embodiment of the invention
  • FIG. 5 is a partial listing of capabilities of the analyzing and reporting system of FIG. 4 in accordance with a preferred embodiment of the invention.
  • FIG. 6 is a flowchart that illustrates a method for analyzing and reporting the status of an adapter in a data processing system in accordance with a preferred embodiment of the invention.
  • FIG. 1 depicts a pictorial representation of a network of data processing systems in which the present invention may be implemented.
  • Network data processing system 100 is a network of computers in which the present invention may be implemented.
  • Network data processing system 100 contains a network 102 , which is the medium used to provide communications links between various devices and computers connected together within network data processing system 100 .
  • Network 102 may include connections, such as wire, wireless communication links, or fiber optic cables.
  • server 104 is connected to network 102 along with storage unit 106 .
  • clients 108 , 110 , and 112 are connected to network 102 .
  • These clients 108 , 110 , and 112 may be, for example, personal computers or network computers.
  • server 104 provides data, such as boot files, operating system images, and applications to clients 108 - 112 .
  • Clients 108 , 110 , and 112 are clients to server 104 .
  • Network data processing system 100 may include additional servers, clients, and other devices not shown.
  • network data processing system 100 is the Internet with network 102 representing a worldwide collection of networks and gateways that use the Transmission Control Protocol/Internet Protocol (TCP/IP) suite of protocols to communicate with one another.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • At the heart of the Internet is a backbone of high-speed data communication lines between major nodes or host computers, consisting of thousands of commercial, government, educational and other computer systems that route data and messages.
  • network data processing system 100 also may be implemented as a number of different types of networks, such as for example, an intranet, a local area network (LAN), or a wide area network (WAN).
  • FIG. 1 is intended as an example, and not as an architectural limitation for the present invention.
  • Data processing system 200 may be a symmetric multiprocessor (SMP) system including a plurality of processors 202 and 204 connected to system bus 206 . Alternatively, a single processor system may be employed. Also connected to system bus 206 is memory controller/cache 208 , which provides an interface to local memory 209 . I/O bus bridge 210 is connected to system bus 206 and provides an interface to I/O bus 212 . Memory controller/cache 208 and I/O bus bridge 210 may be integrated as depicted.
  • SMP symmetric multiprocessor
  • Peripheral component interconnect (PCI) bus bridge 214 connected to I/O bus 212 provides an interface to PCI local bus 216 .
  • PCI Peripheral component interconnect
  • a number of modems may be connected to PCI local bus 216 .
  • Typical PCI bus implementations will support four PCI expansion slots or add-in connectors.
  • Communications links to clients 108 - 112 in FIG. 1 may be provided through modem 218 and network adapter 220 connected to PCI local bus 216 through add-in connectors.
  • Additional PCI bus bridges 222 and 224 provide interfaces for additional PCI local buses 226 and 228 , from which additional modems or network adapters may be supported. In this manner, data processing system 200 allows connections to multiple network computers.
  • a memory-mapped graphics adapter 230 and hard disk 232 may also be connected to I/O bus 212 as depicted, either directly or indirectly.
  • FIG. 2 may vary.
  • other peripheral devices such as optical disk drives and the like, also may be used in addition to or in place of the hardware depicted.
  • the depicted example is not meant to imply architectural limitations with respect to the present invention.
  • the data processing system depicted in FIG. 2 may be, for example, an IBM eServer pSeries system, a product of International Business Machines Corporation in Armonk, N.Y., running the Advanced Interactive Executive (AIX) operating system or LINUX operating system.
  • AIX Advanced Interactive Executive
  • Data processing system 300 is an example of a client computer.
  • Data processing system 300 employs a peripheral component interconnect (PCI) local bus architecture.
  • PCI peripheral component interconnect
  • AGP Accelerated Graphics Port
  • ISA Industry Standard Architecture
  • Processor 302 and main memory 304 are connected to PCI local bus 306 through PCI bridge 308 .
  • PCI bridge 308 also may include an integrated memory controller and cache memory for processor 302 . Additional connections to PCI local bus 306 may be made through direct component interconnection or through add-in boards.
  • local area network (LAN) adapter 310 SCSI host bus adapter 312 , and expansion bus interface 314 are connected to PCI local bus 306 by direct component connection.
  • audio adapter 316 graphics adapter 318 , and audio/video adapter 319 are connected to PCI local bus 306 by add-in boards inserted into expansion slots.
  • Expansion bus interface 314 provides a connection for a keyboard and mouse adapter 320 , modem 322 , and additional memory 324 .
  • Small computer system interface (SCSI) host bus adapter 312 provides a connection for hard disk drive 326 , tape drive 328 , and CD-ROM drive 330 .
  • Typical PCI local bus implementations will support three or four PCI expansion slots or add-in connectors.
  • An operating system runs on processor 302 and is used to coordinate and provide control of various components within data processing system 300 in FIG. 3 .
  • the operating system may be a commercially available operating system, such as Windows XP, which is available from Microsoft Corporation.
  • An object oriented programming system such as Java may run in conjunction with the operating system and provide calls to the operating system from Java programs or applications executing on data processing system 300 . “Java” is a trademark of Sun Microsystems, Inc. Instructions for the operating system, the object-oriented programming system, and applications or programs are located on storage devices, such as hard disk drive 326 , and may be loaded into main memory 304 for execution by processor 302 .
  • FIG. 3 may vary depending on the implementation.
  • Other internal hardware or peripheral devices such as flash read-only memory (ROM), equivalent nonvolatile memory, or optical disk drives and the like, may be used in addition to or in place of the hardware depicted in FIG. 3 .
  • the processes of the present invention may be applied to a multiprocessor data processing system.
  • data processing system 300 may be a stand-alone system configured to be bootable without relying on some type of network communication interfaces.
  • data processing system 300 may be a personal digital assistant (PDA) device, which is configured with ROM and/or flash ROM in order to provide non-volatile memory for storing operating system files and/or user-generated data.
  • PDA personal digital assistant
  • data processing system 300 also may be a notebook computer or hand held computer in addition to taking the form of a PDA.
  • data processing system 300 also may be a kiosk or a Web appliance.
  • FIG. 4 is a block diagram of a system for analyzing and reporting the status of an adapter in a data processing system in accordance with a preferred embodiment of the invention.
  • the system is generally designated by reference number 400 and includes an adapter host 402 which may, for example, be implemented as server 104 or as one of clients 108 , 110 and 112 in FIG. 1 , or as one of data processing systems 200 and 300 illustrated in FIGS. 2 and 3 .
  • Adapter host 402 includes a plurality of adapters including adapters 404 , 406 and 408 illustrated in FIG. 4 .
  • Adapters 404 , 406 and 408 may, for example, be implemented as one of adapters 220 and 230 in FIG. 2 , or as one of adapters 310 to 320 in FIG. 3 .
  • Each adapter 404 , 406 and 408 includes various interfaces, buffers, control units and other components that are required to support a particular device with which the adapter is associated. Only those components that are necessary to provide a clear understanding of the present invention are illustrated in FIG. 4 . In addition, although FIG. 4 only illustrates components on adapter 404 , similar components may also be provided on other adapters of adapter host 402 , such as on adapters 406 and 408 .
  • Adapter host 402 includes device driver 410 to control adapter 404 , and other device drivers, not shown, to control other adapters of adapter host 402 .
  • Device driver 410 may be included within operating system 412 of adapter host 402 as shown in FIG. 4 , or it may have been loaded into adapter host 402 .
  • analyzing and reporting system 400 includes service application 430 for providing a variety of service functions to permit data to be captured regarding the status of adapter 404 .
  • service application 430 resides on service processor chip 432 on adapter 404 that runs the service application.
  • communication with service application 430 can be from operating system 412 of adapter host 402 or from an external device such as remote diagnostic tool 440 .
  • Service application 430 includes the capability of performing a variety of basic diagnostic functions to facilitate the analysis and correction of adapter problems that may be encountered.
  • various diagnostic procedures can be performed to capture data needed to analyze and correct the problem.
  • a developer or a manufacturer may wish to dump specific controller chip registers or configuration registers on the adapter, or to change the values of certain registers, to see if the problem will disappear or to obtain a better understanding of the nature of the problem.
  • service application 430 includes a capability of working in parallel with device driver 410 of adapter 404 to gather, set or clear registers on adapter 404 , such as registers 434 , 436 and 438 in FIG. 4 , and of performing other diagnostic functions to permit data to be captured regarding the status of adapter 404 .
  • Application 430 in effect, provides a plurality of secondary or mini-device drivers that that work in parallel with device driver 410 to provide basic service functions including configuration, open, close, transmit and receive, and the like to permit a snapshot of register values on the adapter to be obtained.
  • Service application 430 in accordance with the present invention provides a manufacturer, developer or other entity with numerous capabilities for analyzing the status of an adapter.
  • FIG. 5 is a partial listing 500 of capabilities of service application 430 .
  • service application 430 can be used to poll configuration registers, dump controller chip registers or configuration registers on the adapter, unload an operating system driver and load secondary drivers provided by the service application.
  • Service application 430 also provides the capability of displaying adapter chip errors, of initiating error polling and of performing reads and writes to controller chip registers.
  • Service application 430 can also be used to activate error detection.
  • the application can be used to send out a notification message when a fatal hardware error occurs by flagging the location of the failing adapter; i.e., by identifying the particular adapter that has failed and the particular machine on which the adapter is located. If the adapter does notice a fatal hardware error, a mechanism can be activated to transfer the adapter's functions to another, working adapter in the data processing system to maintain system operation.
  • Service application 430 can also be used to provide a history gathering capability.
  • the application can maintain a record of problems encountered with respect to a particular adapter.
  • Such a record can include information regarding the frequency of occurrence of a problem, and can be used to compile information to identify if similar problems are occurring on other adapters.
  • System 400 also includes communication structure to permit data to be transmitted to and received from service application 430 .
  • the communication structure enables communication with service application 430 from operating system 412 of adapter host 402 , as indicated by arrow 450 in FIG. 4 , or from remote diagnostic tool 440 , which may be another computer in network 100 in FIG. 1 , a PDA or another suitable machine.
  • the communication structure includes service interface 442 on adapter 404 .
  • Service interface 442 is a separate communications port that is connected to service application 430 by a connection between interface 442 and service application chip 432 , represented by arrow 456 in FIG. 4 ; and that can enable connection to remote diagnostic tool 440 by a physical cable or by a wireless connection as indicated by arrow 452 in FIG. 4 .
  • adapter 404 and remote diagnostic tool 440 permit instructions to be executed to service application 430 without it being necessary to go through operating system 412 of adapter host 402 . Accordingly, service application 430 does not have to run on the same machine, i.e., on adapter host 402 , where adapter 404 resides. As a result, if adapter host 402 hangs, one can still communicate with adapter 404 and run diagnostics. Similarly, if adapter host 402 ceases to operate entirely, and the adapter is the cause, i.e., a hardware problem, information regarding the adapter can still be captured from remote diagnostic tool 440 .
  • service application 430 can be used to monitor cards in an array of adapters from a remote location, and can alert a system administrator or other entity of critical events. For example, when an adapter problem occurs in the field, for example, at a customer's facility, data regarding the operation of an adapter can be captured by service application 430 and sent electronically to a manufacturer for problem analysis. It will not be necessary for the customer to remove the adapter from a machine and send it back to the manufacturer for analysis. Instead, the manufacturer can capture the data in real time, when the problem occurs, and this will help the manufacturer analyze the problem.
  • service application 430 can be used to look at the current state of an adapter in real time while it is configuring or transmitting and receiving, i.e., to watch register values change as the adapter configures or receives/transmits. Such a capability is particularly useful during debugging of a data processing system.
  • FIG. 6 is a flowchart that illustrates steps of a method for analyzing and reporting the status of an adapter according to an embodiment of the invention.
  • the method is generally designated by reference number 600 and begins by providing a service application on an adapter that provides at least one service function for capturing data regarding the status of the adapter (step 602 ).
  • the service application is run to capture data regarding the status of the adapter (step 604 ), and the captured data is then reported by communicating with the service application (step 606 ).
  • the captured data can then be used to provide information regarding the status of the adapter.
  • the present invention provides a system for analyzing and reporting the status of an adapter in a data processing system that includes a service application that provides a variety of service functions to permit data to be captured regarding the status of the adapter, and a communication structure that permits data to be transmitted to and received from the service application.
  • the analyzing and reporting system of the invention facilitates the reporting and diagnosis of adapter problems so that encountered problems can be better understood and more easily corrected.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Method, apparatus, system and computer program product for analyzing and reporting the status of an adapter in a data processing system. The system includes a service application having the capability of providing a variety of service functions to permit data to be captured regarding the status of the adapter, and a communication structure to permit data to be transmitted to and received from the service application. The analyzing and reporting system of the invention facilitates the reporting and diagnosis of adapter problems so that encountered problems can be better understood and more easily corrected.

Description

BACKGROUND OF THE INVENTION
1. Technical Field
The present invention relates generally to the data processing field, and, more particularly, to a method, apparatus and system for analyzing and reporting the status of an adapter in a data processing system.
2. Description of Related Art
When a problem occurs in an adapter in a data processing system, various diagnostic procedures can be performed to capture data needed to analyze and correct the problem. For example, when an adapter problem is encountered, a developer or a manufacturer may wish to dump specific controller chip registers or configuration registers on the adapter, or to change the values of certain registers, to see if the problem will disappear; or, at least, to obtain a better understanding of the nature of the problem.
The mechanisms required to dump controller chip registers or configuration registers, or to perform other diagnostic procedures needed to analyze an adapter problem, however, are normally not included in the device driver for the adapter because these mechanisms are not needed for normal adapter operation. Accordingly, in order to properly analyze an adapter problem, a manufacturer or a developer is often required to modify the adapter's device driver so as to provide the necessary mechanisms to allow the desired diagnostic procedures to be performed.
Often, more than one version of a device driver must be provided to enable an adapter problem to be fully analyzed. For example, during debugging of a system under development, a developer is often required to provide numerous versions of a device driver in order to capture all the data needed to fully understand and solve a particular problem; and this can become a very time consuming task.
In addition, if an adapter problem occurs on a machine that is located in the field, such as at a customer's facility, the customer often must physically remove the adapter from the machine and send it back to the manufacturer in order to have the problem analyzed and corrected. This can result in delays in correcting the problem and cause significant inconvenience to the customer.
Therefore, it would be advantageous to have an improved method and apparatus for analyzing and reporting the status of an adapter.
SUMMARY OF THE INVENTION
The present invention provides a method, apparatus, system and computer program product for analyzing and reporting the status of an adapter in a data processing system. The system includes a service application that provides a variety of service functions to permit data to be captured regarding the status of the adapter, and a communication structure to permit data to be transmitted to and received from the service application. The analyzing and reporting system of the invention facilitates the reporting and diagnosis of adapter problems so that encountered problems can be better understood and more easily corrected.
BRIEF DESCRIPTION OF THE DRAWINGS
The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further objectives and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:
FIG. 1 is a pictorial representation of a network of data processing systems in which the present invention may be implemented;
FIG. 2 is a block diagram of a data processing system that may be implemented as a server in the network of data processing systems of FIG. 1;
FIG. 3 is a block diagram of a data processing system that may be implemented as a client in the network of data processing systems of FIG. 1;
FIG. 4 is a block diagram of a system for analyzing and reporting the status of an adapter in a data processing system in accordance with a preferred embodiment of the invention;
FIG. 5 is a partial listing of capabilities of the analyzing and reporting system of FIG. 4 in accordance with a preferred embodiment of the invention; and
FIG. 6 is a flowchart that illustrates a method for analyzing and reporting the status of an adapter in a data processing system in accordance with a preferred embodiment of the invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
With reference now to the figures, FIG. 1 depicts a pictorial representation of a network of data processing systems in which the present invention may be implemented. Network data processing system 100 is a network of computers in which the present invention may be implemented. Network data processing system 100 contains a network 102, which is the medium used to provide communications links between various devices and computers connected together within network data processing system 100. Network 102 may include connections, such as wire, wireless communication links, or fiber optic cables.
In the depicted example, server 104 is connected to network 102 along with storage unit 106. In addition, clients 108, 110, and 112 are connected to network 102. These clients 108, 110, and 112 may be, for example, personal computers or network computers. In the depicted example, server 104 provides data, such as boot files, operating system images, and applications to clients 108-112. Clients 108, 110, and 112 are clients to server 104. Network data processing system 100 may include additional servers, clients, and other devices not shown. In the depicted example, network data processing system 100 is the Internet with network 102 representing a worldwide collection of networks and gateways that use the Transmission Control Protocol/Internet Protocol (TCP/IP) suite of protocols to communicate with one another. At the heart of the Internet is a backbone of high-speed data communication lines between major nodes or host computers, consisting of thousands of commercial, government, educational and other computer systems that route data and messages. Of course, network data processing system 100 also may be implemented as a number of different types of networks, such as for example, an intranet, a local area network (LAN), or a wide area network (WAN). FIG. 1 is intended as an example, and not as an architectural limitation for the present invention.
Referring to FIG. 2, a block diagram of a data processing system that may be implemented as a server, such as server 104 in FIG. 1, is depicted in accordance with a preferred embodiment of the present invention. Data processing system 200 may be a symmetric multiprocessor (SMP) system including a plurality of processors 202 and 204 connected to system bus 206. Alternatively, a single processor system may be employed. Also connected to system bus 206 is memory controller/cache 208, which provides an interface to local memory 209. I/O bus bridge 210 is connected to system bus 206 and provides an interface to I/O bus 212. Memory controller/cache 208 and I/O bus bridge 210 may be integrated as depicted.
Peripheral component interconnect (PCI) bus bridge 214 connected to I/O bus 212 provides an interface to PCI local bus 216. A number of modems may be connected to PCI local bus 216. Typical PCI bus implementations will support four PCI expansion slots or add-in connectors. Communications links to clients 108-112 in FIG. 1 may be provided through modem 218 and network adapter 220 connected to PCI local bus 216 through add-in connectors.
Additional PCI bus bridges 222 and 224 provide interfaces for additional PCI local buses 226 and 228, from which additional modems or network adapters may be supported. In this manner, data processing system 200 allows connections to multiple network computers. A memory-mapped graphics adapter 230 and hard disk 232 may also be connected to I/O bus 212 as depicted, either directly or indirectly.
Those of ordinary skill in the art will appreciate that the hardware depicted in FIG. 2 may vary. For example, other peripheral devices, such as optical disk drives and the like, also may be used in addition to or in place of the hardware depicted. The depicted example is not meant to imply architectural limitations with respect to the present invention.
The data processing system depicted in FIG. 2 may be, for example, an IBM eServer pSeries system, a product of International Business Machines Corporation in Armonk, N.Y., running the Advanced Interactive Executive (AIX) operating system or LINUX operating system.
With reference now to FIG. 3, a block diagram illustrating a data processing system is depicted in which the present invention may be implemented. Data processing system 300 is an example of a client computer. Data processing system 300 employs a peripheral component interconnect (PCI) local bus architecture. Although the depicted example employs a PCI bus, other bus architectures such as Accelerated Graphics Port (AGP) and Industry Standard Architecture (ISA) may be used. Processor 302 and main memory 304 are connected to PCI local bus 306 through PCI bridge 308. PCI bridge 308 also may include an integrated memory controller and cache memory for processor 302. Additional connections to PCI local bus 306 may be made through direct component interconnection or through add-in boards. In the depicted example, local area network (LAN) adapter 310, SCSI host bus adapter 312, and expansion bus interface 314 are connected to PCI local bus 306 by direct component connection. In contrast, audio adapter 316, graphics adapter 318, and audio/video adapter 319 are connected to PCI local bus 306 by add-in boards inserted into expansion slots. Expansion bus interface 314 provides a connection for a keyboard and mouse adapter 320, modem 322, and additional memory 324. Small computer system interface (SCSI) host bus adapter 312 provides a connection for hard disk drive 326, tape drive 328, and CD-ROM drive 330. Typical PCI local bus implementations will support three or four PCI expansion slots or add-in connectors.
An operating system runs on processor 302 and is used to coordinate and provide control of various components within data processing system 300 in FIG. 3. The operating system may be a commercially available operating system, such as Windows XP, which is available from Microsoft Corporation. An object oriented programming system such as Java may run in conjunction with the operating system and provide calls to the operating system from Java programs or applications executing on data processing system 300. “Java” is a trademark of Sun Microsystems, Inc. Instructions for the operating system, the object-oriented programming system, and applications or programs are located on storage devices, such as hard disk drive 326, and may be loaded into main memory 304 for execution by processor 302.
Those of ordinary skill in the art will appreciate that the hardware in FIG. 3 may vary depending on the implementation. Other internal hardware or peripheral devices, such as flash read-only memory (ROM), equivalent nonvolatile memory, or optical disk drives and the like, may be used in addition to or in place of the hardware depicted in FIG. 3. Also, the processes of the present invention may be applied to a multiprocessor data processing system.
As another example, data processing system 300 may be a stand-alone system configured to be bootable without relying on some type of network communication interfaces. As a further example, data processing system 300 may be a personal digital assistant (PDA) device, which is configured with ROM and/or flash ROM in order to provide non-volatile memory for storing operating system files and/or user-generated data.
The depicted example in FIG. 3 and above-described examples are not meant to imply architectural limitations. For example, data processing system 300 also may be a notebook computer or hand held computer in addition to taking the form of a PDA. Data processing system 300 also may be a kiosk or a Web appliance.
FIG. 4 is a block diagram of a system for analyzing and reporting the status of an adapter in a data processing system in accordance with a preferred embodiment of the invention. The system is generally designated by reference number 400 and includes an adapter host 402 which may, for example, be implemented as server 104 or as one of clients 108, 110 and 112 in FIG. 1, or as one of data processing systems 200 and 300 illustrated in FIGS. 2 and 3. Adapter host 402 includes a plurality of adapters including adapters 404, 406 and 408 illustrated in FIG. 4. Adapters 404, 406 and 408 may, for example, be implemented as one of adapters 220 and 230 in FIG. 2, or as one of adapters 310 to 320 in FIG. 3.
Each adapter 404, 406 and 408 includes various interfaces, buffers, control units and other components that are required to support a particular device with which the adapter is associated. Only those components that are necessary to provide a clear understanding of the present invention are illustrated in FIG. 4. In addition, although FIG. 4 only illustrates components on adapter 404, similar components may also be provided on other adapters of adapter host 402, such as on adapters 406 and 408.
Adapter host 402 includes device driver 410 to control adapter 404, and other device drivers, not shown, to control other adapters of adapter host 402. Device driver 410 may be included within operating system 412 of adapter host 402 as shown in FIG. 4, or it may have been loaded into adapter host 402.
In accordance with an embodiment of the invention, analyzing and reporting system 400 includes service application 430 for providing a variety of service functions to permit data to be captured regarding the status of adapter 404. As shown in FIG. 4, service application 430 resides on service processor chip 432 on adapter 404 that runs the service application. As will be explained more fully hereinafter, communication with service application 430 can be from operating system 412 of adapter host 402 or from an external device such as remote diagnostic tool 440.
Service application 430 includes the capability of performing a variety of basic diagnostic functions to facilitate the analysis and correction of adapter problems that may be encountered. In this regard, when a problem occurs in an adapter, such as adapter 404 in FIG. 4, various diagnostic procedures can be performed to capture data needed to analyze and correct the problem. A developer or a manufacturer, for example, may wish to dump specific controller chip registers or configuration registers on the adapter, or to change the values of certain registers, to see if the problem will disappear or to obtain a better understanding of the nature of the problem.
The mechanisms required to dump controller chip registers or configuration registers or to perform other diagnostic procedures needed to analyze an adapter problem, however, are normally not included in the device driver for the adapter because these mechanisms are not needed for normal adapter operation. Accordingly, in order to properly analyze an adapter problem, it has become the practice for a manufacturer or a developer to modify the adapter's device driver so as to provide the necessary mechanisms to allow the desired diagnostic procedures to be performed. This can be an inconvenient and time consuming procedure.
According to an illustrative embodiment of the invention, service application 430 includes a capability of working in parallel with device driver 410 of adapter 404 to gather, set or clear registers on adapter 404, such as registers 434, 436 and 438 in FIG. 4, and of performing other diagnostic functions to permit data to be captured regarding the status of adapter 404. Application 430, in effect, provides a plurality of secondary or mini-device drivers that that work in parallel with device driver 410 to provide basic service functions including configuration, open, close, transmit and receive, and the like to permit a snapshot of register values on the adapter to be obtained.
With the present invention, accordingly, when a problem is encountered in an adapter, various diagnostic functions can be performed on the adapter using the secondary device drivers provided by service application 430 operating in parallel with the adapter's own device driver without is being necessary to redesign or modify the adapter's own device driver.
Service application 430 in accordance with the present invention provides a manufacturer, developer or other entity with numerous capabilities for analyzing the status of an adapter. FIG. 5 is a partial listing 500 of capabilities of service application 430. As shown in FIG. 5, service application 430 can be used to poll configuration registers, dump controller chip registers or configuration registers on the adapter, unload an operating system driver and load secondary drivers provided by the service application. Service application 430 also provides the capability of displaying adapter chip errors, of initiating error polling and of performing reads and writes to controller chip registers.
Service application 430 can also be used to activate error detection. For example, the application can be used to send out a notification message when a fatal hardware error occurs by flagging the location of the failing adapter; i.e., by identifying the particular adapter that has failed and the particular machine on which the adapter is located. If the adapter does notice a fatal hardware error, a mechanism can be activated to transfer the adapter's functions to another, working adapter in the data processing system to maintain system operation.
Service application 430 can also be used to provide a history gathering capability. For example, the application can maintain a record of problems encountered with respect to a particular adapter. Such a record can include information regarding the frequency of occurrence of a problem, and can be used to compile information to identify if similar problems are occurring on other adapters.
System 400 also includes communication structure to permit data to be transmitted to and received from service application 430. According to an embodiment of the invention, the communication structure enables communication with service application 430 from operating system 412 of adapter host 402, as indicated by arrow 450 in FIG. 4, or from remote diagnostic tool 440, which may be another computer in network 100 in FIG. 1, a PDA or another suitable machine. To enable communication from remote diagnostic tool 440, the communication structure includes service interface 442 on adapter 404. Service interface 442 is a separate communications port that is connected to service application 430 by a connection between interface 442 and service application chip 432, represented by arrow 456 in FIG. 4; and that can enable connection to remote diagnostic tool 440 by a physical cable or by a wireless connection as indicated by arrow 452 in FIG. 4.
The direct connection between adapter 404 and remote diagnostic tool 440 permits instructions to be executed to service application 430 without it being necessary to go through operating system 412 of adapter host 402. Accordingly, service application 430 does not have to run on the same machine, i.e., on adapter host 402, where adapter 404 resides. As a result, if adapter host 402 hangs, one can still communicate with adapter 404 and run diagnostics. Similarly, if adapter host 402 ceases to operate entirely, and the adapter is the cause, i.e., a hardware problem, information regarding the adapter can still be captured from remote diagnostic tool 440.
By providing a wireless connection between adapter 404 and remote diagnostic tool 440, service application 430 can be used to monitor cards in an array of adapters from a remote location, and can alert a system administrator or other entity of critical events. For example, when an adapter problem occurs in the field, for example, at a customer's facility, data regarding the operation of an adapter can be captured by service application 430 and sent electronically to a manufacturer for problem analysis. It will not be necessary for the customer to remove the adapter from a machine and send it back to the manufacturer for analysis. Instead, the manufacturer can capture the data in real time, when the problem occurs, and this will help the manufacturer analyze the problem.
By using Bluetooth technology or another wireless communication network, service application 430 according to the present invention can be used to look at the current state of an adapter in real time while it is configuring or transmitting and receiving, i.e., to watch register values change as the adapter configures or receives/transmits. Such a capability is particularly useful during debugging of a data processing system.
FIG. 6 is a flowchart that illustrates steps of a method for analyzing and reporting the status of an adapter according to an embodiment of the invention. The method is generally designated by reference number 600 and begins by providing a service application on an adapter that provides at least one service function for capturing data regarding the status of the adapter (step 602). The service application is run to capture data regarding the status of the adapter (step 604), and the captured data is then reported by communicating with the service application (step 606). The captured data can then be used to provide information regarding the status of the adapter.
In general, the present invention provides a system for analyzing and reporting the status of an adapter in a data processing system that includes a service application that provides a variety of service functions to permit data to be captured regarding the status of the adapter, and a communication structure that permits data to be transmitted to and received from the service application. The analyzing and reporting system of the invention facilitates the reporting and diagnosis of adapter problems so that encountered problems can be better understood and more easily corrected.
It is important to note that while the present invention has been described in the context of a fully functioning data processing system, those of ordinary skill in the art will appreciate that the processes of the present invention are capable of being distributed in the form of a computer readable medium of instructions and a variety of forms and that the present invention applies equally regardless of the particular type of signal bearing media actually used to carry out the distribution. Examples of computer readable media include recordable-type media, such as a floppy disk, a hard disk drive, a RAM, CD-ROMS, DVD-ROMs, and transmission-type media, such as digital and analog communications links, wired or wireless communications links using transmission forms, such as, for example, radio frequency and light wave transmissions. The computer readable media may take the form of coded formats that are decoded for actual use in a particular data processing system.
The description of the present invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art. The embodiment was chosen and described in order to best explain the principles of the invention, the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.

Claims (21)

1. An apparatus for analyzing and reporting the status of an adapter in a data processing system, comprising:
an adapter connectable to a bus of the data processing system for supporting a mechanism with which the adapter is associated;
a service application on said adapter, said service application providing at least one secondary device driver that works in parallel with a device driver of said adapter for providing at least one service function for capturing data regarding the status of the adapter, wherein the at least one service function comprises at least one of configuration, open, close, transmit and receive; and
a communication structure on said adapter for transmitting data to said service application and for receiving said captured data regarding the status of the adapter from said service application.
2. The apparatus according to claim 1, wherein said service application resides on a service processor chip on said adapter.
3. The apparatus according to claim 1, and further including:
at least one register on said adapter; and
means for providing communication between said service application and said at least one register for enabling said service application to provide said at least one service function, wherein said at least one service function further comprises at least one of gathering, setting and clearing said at least one register.
4. The apparatus according to claim 2, wherein said communication structure includes:
a communication interface on said adapter; and
means for connecting said service processor chip to said communication interface for enabling communication between said service application and an external device through said communication interface.
5. The apparatus according to claim 4, wherein said communication interface comprises a cable interface for providing a cable connection between said adapter and said external device.
6. The apparatus according to claim 4, wherein said communication interface comprises a wireless communication interface for providing wireless communication between said adapter and said external device.
7. A system for analyzing and reporting the status of an adapter in a data processing system, comprising:
an adapter connectable to a bus of the data processing system for supporting a mechanism with which the adapter is associated;
a service application on said adapter, said service application providing at least one secondary device driver that works in parallel with a device driver of said adapter for providing at least one service function for capturing data regarding the status of the adapter, wherein the at least one service function comprises at least one of configuration, open, close, transmit and receive;
means for communicating with said service application; and
communication structure on said adapter for transmitting data from said communicating means to said service application and for transmitting said captured data regarding the status of the adapter from said service application to said communicating means.
8. The system according to claim 7, wherein said service application resides on a service processor chip on said adapter.
9. The system according to claim 7, and further including:
at least one register on said adapter; and
means for providing communication between said service application and at least one register for enabling said service application to provide said at least one service function, wherein said at least one service function comprises at least one of gathering, setting and clearing said at least one register.
10. The system according to claim 8, wherein said communication structure includes:
a communication interface on said adapter;
means for connecting said service processor chip to said communication interface; and
wherein said communicating means comprises an external device for communicating with said service application through said communication interface.
11. The system according to claim 10, wherein said communication interface comprises a cable interface for providing a cable connection between said adapter and said external device.
12. The system according to claim 10, wherein said communication interface comprises a wireless communication interface for providing wireless communication between said adapter and said external device.
13. The system according to claim 12, wherein said wireless communication between said adapter and said external device utilizes Bluetooth wireless technology.
14. A method for analyzing and reporting the status of an adapter in a data processing system, comprising:
providing a service application on an adapter, the adapter being connectable to a bus of the data processing system for supporting a mechanism with which the adapter is associated, said service application providing at least one secondary device driver that works in parallel with a device driver of said adapter for providing at least one service function for capturing data regarding the status of the adapter, wherein the at least one service function comprises at least one of configuration, open, close, transmit and receive; and
communicating with said service application from an external device for transmitting data from said external device to said service application and for transmitting said captured data regarding the status of the adapter from said service application to said external device.
15. The method according to claim 14, wherein said adapter includes at least one register, and wherein said providing at least one service function further comprises at least one of gathering, setting and clearing said at least one register.
16. The method according to claim 14, wherein said communicating comprises communicating with said service application from said external device through a communication interface on said adapter without going through an operating system of said data processing system.
17. The method according to claim 16, wherein said communicating comprises communicating with said service application from said external device through a cable connection between said adapter and said external device.
18. The method according to claim 16, wherein said communicating comprises communicating with said service application from said external device through a wireless connection between said communication interface and said external device.
19. A computer program product in a recordable-type computer readable medium, the computer program product executed by a data processing system for analyzing and reporting the status of an adapter in the data processing system, the computer program product comprising:
first instructions for enabling a service application on the adapter to provide at least one service function for capturing data regarding the status of the adapter, the adapter being connectable to a bus of the data processing system for supporting a mechanism with which the adapter is associated, wherein the service application provides at least one secondary device driver that works in parallel with a device driver of said adapter for providing the at least one service function for capturing data regarding the status of the adapter, and wherein the at least one service function comprises at least one of configuration, open, close, transmit and receive; and
second instructions for enabling communication between said service application and an external device for transmitting data from said external device to said service application and for transmitting said captured data regarding the status of the adapter from said service application to said external device.
20. The computer program product according to claim 19, wherein said adapter includes at least one register, and wherein said first instructions further include instructions for at least one of gathering, setting and clearing said at least one register.
21. The computer program product according to claim 19, wherein said second instructions include instructions for enabling communication with said service application from said external device through a communication interface on said adapter without going through an operating system of said data processing system.
US10/829,832 2004-04-22 2004-04-22 Application for diagnosing and reporting status of an adapter Expired - Fee Related US7506214B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/829,832 US7506214B2 (en) 2004-04-22 2004-04-22 Application for diagnosing and reporting status of an adapter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/829,832 US7506214B2 (en) 2004-04-22 2004-04-22 Application for diagnosing and reporting status of an adapter

Publications (2)

Publication Number Publication Date
US20050257100A1 US20050257100A1 (en) 2005-11-17
US7506214B2 true US7506214B2 (en) 2009-03-17

Family

ID=35310738

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/829,832 Expired - Fee Related US7506214B2 (en) 2004-04-22 2004-04-22 Application for diagnosing and reporting status of an adapter

Country Status (1)

Country Link
US (1) US7506214B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070255819A1 (en) * 2006-05-01 2007-11-01 Hua Binh K Methods and Arrangements to Detect a Failure in a Communication Network
US20090158082A1 (en) * 2007-12-18 2009-06-18 Vinit Jain Failover in a host concurrently supporting multiple virtual ip addresses across multiple adapters
US20100179985A1 (en) * 2007-07-02 2010-07-15 France Telecom Method for communication between a terminal and a server
US20110096659A1 (en) * 2009-10-28 2011-04-28 International Business Machines Corporation Zero Packet Loss Energy Efficient Ethernet Link Transition Via Driver Fast Failover
US9514087B2 (en) 2013-11-06 2016-12-06 International Business Machines Corporation Dynamic data collection communication between adapter functions
US10313222B2 (en) 2015-07-13 2019-06-04 International Business Machines Corporation Diagnosis of a network adapter during network operation

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ572627A (en) * 2006-05-19 2011-11-25 Schweitzer Engineering Lab Inc Selecting memory locations within a power system device or fault indicator for viewing
US7958386B2 (en) * 2007-12-12 2011-06-07 At&T Intellectual Property I, L.P. Method and apparatus for providing a reliable fault management for a network
FR2939532B1 (en) * 2008-12-10 2011-01-21 Airbus France METHOD AND DEVICE FOR DETECTING NON-REGRESSION OF AN INPUT / OUTPUT SYSTEM IN A SIMULATION ENVIRONMENT
US8769038B2 (en) * 2009-07-30 2014-07-01 Flextronics Ap, Llc Remote device diagnostic and repair apparatus and methods
US8527816B2 (en) * 2010-03-10 2013-09-03 International Business Machines Corporation Identifying a defective adapter
US8615645B2 (en) 2010-06-23 2013-12-24 International Business Machines Corporation Controlling the selectively setting of operational parameters for an adapter
US8566480B2 (en) 2010-06-23 2013-10-22 International Business Machines Corporation Load instruction for communicating with adapters
US8510599B2 (en) * 2010-06-23 2013-08-13 International Business Machines Corporation Managing processing associated with hardware events
US8505032B2 (en) 2010-06-23 2013-08-06 International Business Machines Corporation Operating system notification of actions to be taken responsive to adapter events
US8650335B2 (en) 2010-06-23 2014-02-11 International Business Machines Corporation Measurement facility for adapter functions
US8549182B2 (en) 2010-06-23 2013-10-01 International Business Machines Corporation Store/store block instructions for communicating with adapters

Citations (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4975829A (en) * 1986-09-22 1990-12-04 At&T Bell Laboratories Communication interface protocol
US5003573A (en) * 1990-04-12 1991-03-26 Rolm Systems Self-diagnosis of loop start and ground start trunk interfaces
US5150402A (en) * 1990-09-12 1992-09-22 Nec Corporation Isdn terminal having diagnostic function
US5390299A (en) * 1991-12-27 1995-02-14 Digital Equipment Corporation System for using three different methods to report buffer memory occupancy information regarding fullness-related and/or packet discard-related information
US5548731A (en) * 1993-01-13 1996-08-20 International Business Machines Corporation System for forwarding data packets with different formats to different software entitles respectively based upon match between portion of data packet and filter
US5640541A (en) * 1995-03-24 1997-06-17 Openconnect Systems, Inc. Adapter for interfacing a SCSI bus with an IBM system/360/370 I/O interface channel and information system including same
US5657455A (en) * 1994-09-07 1997-08-12 Adaptec, Inc. Status indicator for a host adapter
US5877819A (en) * 1993-03-31 1999-03-02 Branson; Philip J. Managing information in an endoscopy system
US5978912A (en) * 1997-03-20 1999-11-02 Phoenix Technologies Limited Network enhanced BIOS enabling remote management of a computer without a functioning operating system
US6223234B1 (en) * 1998-07-17 2001-04-24 Micron Electronics, Inc. Apparatus for the hot swap and add of input/output platforms and devices
US6249828B1 (en) * 1997-05-13 2001-06-19 Micron Electronics, Inc. Method for the hot swap of a mass storage adapter on a system including a statically loaded adapter driver
US6272551B1 (en) * 1998-04-08 2001-08-07 Intel Corporation Network adapter for transmitting network packets between a host device and a power line network
US6279125B1 (en) * 1998-06-24 2001-08-21 Micron Technology, Inc. Computer system diagnostics
US20020000464A1 (en) * 1999-01-29 2002-01-03 Jon R Ramberg Automatic data collection device that intelligently switches data based on data type
US20020046246A1 (en) * 2000-04-19 2002-04-18 Wright Peter Michael Electronic communications in intelligent electronic devices
US20020184576A1 (en) * 2001-03-29 2002-12-05 International Business Machines Corporation Method and apparatus for isolating failing hardware in a PCI recoverable error
US20030018926A1 (en) * 2001-07-17 2003-01-23 International Business Machines Corporation Transition to switch node adapter diagnostics using adapter device driver
US20030041179A1 (en) * 2001-08-23 2003-02-27 Microsoft Corporation Method and system for providing state change notifications in device drivers
US6539338B1 (en) * 2000-06-09 2003-03-25 3Com Corporation Self-diagnostic testing of a network interface adapter
US20030126315A1 (en) * 2001-12-28 2003-07-03 Choon-Seng Tan Data storage network with host transparent failover controlled by host bus adapter
US20030163298A1 (en) * 1998-02-17 2003-08-28 National Instruments Corporation Reconfigurable measurement system utilizing a programmable hardware element and fixed hardware resources
US20030172368A1 (en) * 2001-12-26 2003-09-11 Elizabeth Alumbaugh System and method for autonomously generating heterogeneous data source interoperability bridges based on semantic modeling derived from self adapting ontology
US20030197485A1 (en) * 2002-04-22 2003-10-23 Michael Miller Battery adapter
US6668205B1 (en) * 1999-06-30 2003-12-23 Mitsubishi Denki Kabushiki Kaisha Control method of factory automation system, recording medium recording a program therefor and central processor of factory automation system
US20040073848A1 (en) * 2002-10-15 2004-04-15 Pfeifer Alan Thomas Method for providing cable isolation in a fibre channel test environment
US20040225775A1 (en) * 2001-03-01 2004-11-11 Greg Pellegrino Translating device adapter having a common command set for interfacing multiple types of redundant storage devices to a host processor
US20050010837A1 (en) * 2003-07-10 2005-01-13 International Business Machines Corporation Method and apparatus for managing adapters in a data processing system
US20050028156A1 (en) * 2003-07-30 2005-02-03 Northwestern University Automatic method and system for formulating and transforming representations of context used by information services
US20050096805A1 (en) * 2003-10-31 2005-05-05 Snap-On Technologies, Inc. Wireless communication for diagnostic instrument
US6915343B1 (en) * 2000-06-22 2005-07-05 International Business Machines Corporation System and method of running diagnostic testing programs on a diagnostic adapter card and analyzing the results for diagnosing hardware and software problems on a network computer
US20050193285A1 (en) * 2004-02-11 2005-09-01 Eung-Sun Jeon Method and system for processing fault information in NMS
US6990424B2 (en) * 2003-12-08 2006-01-24 Lsi Logic Corporation Method to provide external observability when embedded firmware detects predefined conditions
US7026913B2 (en) * 1999-11-30 2006-04-11 Ncr Corporation Methods and apparatus for self-diagnosing electronic price labels
US7103783B1 (en) * 2000-09-29 2006-09-05 Pinion Software, Inc. Method and system for providing data security in a file system monitor with stack positioning
US7206977B2 (en) * 2004-01-13 2007-04-17 International Business Machines Corporation Intelligent self-configurable adapter
US7275175B2 (en) * 2004-07-22 2007-09-25 International Business Machines Corporation Method and apparatus for high-speed network adapter failover
US7418716B2 (en) * 2003-12-19 2008-08-26 Intel Corporation Method, apparatus, system, and article of manufacture for interfacing a device

Patent Citations (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4975829A (en) * 1986-09-22 1990-12-04 At&T Bell Laboratories Communication interface protocol
US5003573A (en) * 1990-04-12 1991-03-26 Rolm Systems Self-diagnosis of loop start and ground start trunk interfaces
US5150402A (en) * 1990-09-12 1992-09-22 Nec Corporation Isdn terminal having diagnostic function
US5390299A (en) * 1991-12-27 1995-02-14 Digital Equipment Corporation System for using three different methods to report buffer memory occupancy information regarding fullness-related and/or packet discard-related information
US5548731A (en) * 1993-01-13 1996-08-20 International Business Machines Corporation System for forwarding data packets with different formats to different software entitles respectively based upon match between portion of data packet and filter
US5877819A (en) * 1993-03-31 1999-03-02 Branson; Philip J. Managing information in an endoscopy system
US5657455A (en) * 1994-09-07 1997-08-12 Adaptec, Inc. Status indicator for a host adapter
US5640541A (en) * 1995-03-24 1997-06-17 Openconnect Systems, Inc. Adapter for interfacing a SCSI bus with an IBM system/360/370 I/O interface channel and information system including same
US5978912A (en) * 1997-03-20 1999-11-02 Phoenix Technologies Limited Network enhanced BIOS enabling remote management of a computer without a functioning operating system
US6324644B1 (en) * 1997-03-20 2001-11-27 Phoenix Technologies Ltd. Network enhanced bios enabling remote management of a computer without a functioning operating system
US6249828B1 (en) * 1997-05-13 2001-06-19 Micron Electronics, Inc. Method for the hot swap of a mass storage adapter on a system including a statically loaded adapter driver
US20030163298A1 (en) * 1998-02-17 2003-08-28 National Instruments Corporation Reconfigurable measurement system utilizing a programmable hardware element and fixed hardware resources
US6272551B1 (en) * 1998-04-08 2001-08-07 Intel Corporation Network adapter for transmitting network packets between a host device and a power line network
US6279125B1 (en) * 1998-06-24 2001-08-21 Micron Technology, Inc. Computer system diagnostics
US6223234B1 (en) * 1998-07-17 2001-04-24 Micron Electronics, Inc. Apparatus for the hot swap and add of input/output platforms and devices
US20020000464A1 (en) * 1999-01-29 2002-01-03 Jon R Ramberg Automatic data collection device that intelligently switches data based on data type
US6668205B1 (en) * 1999-06-30 2003-12-23 Mitsubishi Denki Kabushiki Kaisha Control method of factory automation system, recording medium recording a program therefor and central processor of factory automation system
US7026913B2 (en) * 1999-11-30 2006-04-11 Ncr Corporation Methods and apparatus for self-diagnosing electronic price labels
US20020046246A1 (en) * 2000-04-19 2002-04-18 Wright Peter Michael Electronic communications in intelligent electronic devices
US6539338B1 (en) * 2000-06-09 2003-03-25 3Com Corporation Self-diagnostic testing of a network interface adapter
US6915343B1 (en) * 2000-06-22 2005-07-05 International Business Machines Corporation System and method of running diagnostic testing programs on a diagnostic adapter card and analyzing the results for diagnosing hardware and software problems on a network computer
US7103783B1 (en) * 2000-09-29 2006-09-05 Pinion Software, Inc. Method and system for providing data security in a file system monitor with stack positioning
US20040225775A1 (en) * 2001-03-01 2004-11-11 Greg Pellegrino Translating device adapter having a common command set for interfacing multiple types of redundant storage devices to a host processor
US20020184576A1 (en) * 2001-03-29 2002-12-05 International Business Machines Corporation Method and apparatus for isolating failing hardware in a PCI recoverable error
US20030018926A1 (en) * 2001-07-17 2003-01-23 International Business Machines Corporation Transition to switch node adapter diagnostics using adapter device driver
US6892321B2 (en) * 2001-07-17 2005-05-10 International Business Machines Corporation Transition to switch node adapter diagnostics using adapter device driver
US20030041179A1 (en) * 2001-08-23 2003-02-27 Microsoft Corporation Method and system for providing state change notifications in device drivers
US20030172368A1 (en) * 2001-12-26 2003-09-11 Elizabeth Alumbaugh System and method for autonomously generating heterogeneous data source interoperability bridges based on semantic modeling derived from self adapting ontology
US20030126315A1 (en) * 2001-12-28 2003-07-03 Choon-Seng Tan Data storage network with host transparent failover controlled by host bus adapter
US20030197485A1 (en) * 2002-04-22 2003-10-23 Michael Miller Battery adapter
US20040073848A1 (en) * 2002-10-15 2004-04-15 Pfeifer Alan Thomas Method for providing cable isolation in a fibre channel test environment
US20050010837A1 (en) * 2003-07-10 2005-01-13 International Business Machines Corporation Method and apparatus for managing adapters in a data processing system
US20050028156A1 (en) * 2003-07-30 2005-02-03 Northwestern University Automatic method and system for formulating and transforming representations of context used by information services
US20050096805A1 (en) * 2003-10-31 2005-05-05 Snap-On Technologies, Inc. Wireless communication for diagnostic instrument
US6990424B2 (en) * 2003-12-08 2006-01-24 Lsi Logic Corporation Method to provide external observability when embedded firmware detects predefined conditions
US7418716B2 (en) * 2003-12-19 2008-08-26 Intel Corporation Method, apparatus, system, and article of manufacture for interfacing a device
US7206977B2 (en) * 2004-01-13 2007-04-17 International Business Machines Corporation Intelligent self-configurable adapter
US20050193285A1 (en) * 2004-02-11 2005-09-01 Eung-Sun Jeon Method and system for processing fault information in NMS
US7275175B2 (en) * 2004-07-22 2007-09-25 International Business Machines Corporation Method and apparatus for high-speed network adapter failover

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7765290B2 (en) * 2006-05-01 2010-07-27 International Business Machines Corporation Methods and arrangements to detect a failure in a communication network
US20080225733A1 (en) * 2006-05-01 2008-09-18 Hua Binh K Methods and Arrangements to Detect A Failure In A Communication Network
US20070255819A1 (en) * 2006-05-01 2007-11-01 Hua Binh K Methods and Arrangements to Detect a Failure in a Communication Network
US7743129B2 (en) * 2006-05-01 2010-06-22 International Business Machines Corporation Methods and arrangements to detect a failure in a communication network
US8868742B2 (en) * 2007-07-02 2014-10-21 Orange Method for communication between a terminal and a server
US20100179985A1 (en) * 2007-07-02 2010-07-15 France Telecom Method for communication between a terminal and a server
US7913106B2 (en) * 2007-12-18 2011-03-22 International Business Machines Corporation Failover in a host concurrently supporting multiple virtual IP addresses across multiple adapters
US20090158082A1 (en) * 2007-12-18 2009-06-18 Vinit Jain Failover in a host concurrently supporting multiple virtual ip addresses across multiple adapters
US20110096659A1 (en) * 2009-10-28 2011-04-28 International Business Machines Corporation Zero Packet Loss Energy Efficient Ethernet Link Transition Via Driver Fast Failover
US8724465B2 (en) 2009-10-28 2014-05-13 International Business Machines Corporation Zero packet loss energy efficient ethernet link transition via driver fast failover
US9514087B2 (en) 2013-11-06 2016-12-06 International Business Machines Corporation Dynamic data collection communication between adapter functions
US9552324B2 (en) 2013-11-06 2017-01-24 International Business Machines Corporation Dynamic data collection communication between adapter functions
US10313222B2 (en) 2015-07-13 2019-06-04 International Business Machines Corporation Diagnosis of a network adapter during network operation
US10355968B2 (en) 2015-07-13 2019-07-16 International Business Machines Corporation Diagnosis of a network adapter during network operation

Also Published As

Publication number Publication date
US20050257100A1 (en) 2005-11-17

Similar Documents

Publication Publication Date Title
US7506214B2 (en) Application for diagnosing and reporting status of an adapter
US7801984B2 (en) Diagnostic/remote monitoring by email
US6915343B1 (en) System and method of running diagnostic testing programs on a diagnostic adapter card and analyzing the results for diagnosing hardware and software problems on a network computer
US7810087B2 (en) Method and apparatus for inserting code fixes into applications at runtime
US7664986B2 (en) System and method for determining fault isolation in an enterprise computing system
US7882393B2 (en) In-band problem log data collection between a host system and a storage system
US6684180B2 (en) Apparatus, system and method for reporting field replaceable unit replacement
US6944796B2 (en) Method and system to implement a system event log for system manageability
US9110766B2 (en) Dynamically recommending changes to an association between an operating system image and an update group
US8042004B2 (en) Diagnosing communications between computer systems
EP1528471A2 (en) Method and architecture for automated fault diagnosis and correction in a computer system
US20060195731A1 (en) First failure data capture based on threshold violation
EP2149090B1 (en) System diagnostic utility
US7870441B2 (en) Determining an underlying cause for errors detected in a data processing system
US6738832B2 (en) Methods and apparatus in a logging system for the adaptive logger replacement in order to receive pre-boot information
CN1744049A (en) Method and apparatus for regulating input/output fault
EP1775659A2 (en) Remote maintenance system, mail connect confirmation method and program, and mail transmission environment diagnosis program
US20040025077A1 (en) Method and apparatus for the dynamic tuning of recovery actions in a server by modifying hints and symptom entries from a remote location
US9348721B2 (en) Diagnosing entities associated with software components
US6990424B2 (en) Method to provide external observability when embedded firmware detects predefined conditions
US8655845B2 (en) Reducing duplicate information when reporting system incidents
KR940006834B1 (en) Method of generating the diagnosing and recovery data file in multiprocessor system
JP2947571B2 (en) Fault diagnosis device
CN113484710A (en) Graphical user interface for traffic capture and debugging tool
JP2000081992A (en) Computer performance checking system

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ANGLIN, DEBBIE ANN;ANGLIN, HOWARD NEIL;REEL/FRAME:014628/0878

Effective date: 20040416

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCF Information on status: patent grant

Free format text: PATENTED CASE

REMI Maintenance fee reminder mailed
FPAY Fee payment

Year of fee payment: 4

SULP Surcharge for late payment
FPAY Fee payment

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Lapsed due to failure to pay maintenance fee

Effective date: 20210317