mohandev2 / openhpi_old

Other
0 stars 0 forks source link

IPMI plug-in takes too long to discover #226

Closed mohandev2 closed 6 years ago

mohandev2 commented 20 years ago

As discussed before, 6 minutes of discovery is too long.

Restructuring the code so that bus_scan is done in the SEL function affects the way the MCs are discovered and reported.

We need to possibly work with Corey as well to solve this.

Reported by: tariqx

Original Ticket: "openhpi/bugs/226":https://sourceforge.net/p/openhpi/bugs/226

mohandev2 commented 20 years ago

Logged In: YES user_id=602195

For comparison: Running hpisensor on an IPMI 1.5 system (SCB2 board) with OpenHPI 0.6.0 and OpenIPMI 1.2.21 took 10 min 24.100 sec.

Running hpisensor on the same system with another HPI implementation, also using the OpenIPMI driver, took only 20.365 seconds.

These times include discovery and 57 IPMI SDRs.

Original comment by: arcress

mohandev2 commented 20 years ago

Original comment by: tariqx

mohandev2 commented 20 years ago

Logged In: YES user_id=118691

Code restructured in that: bus_scan speed enhanced in OpenIPMI. ipmi_discover waits for SDR_read_done and bus_scan_done flags only. SELs_read_done is now waited on in the ipmi_get_sel function. the call to force a reread of the DOMAIN sel is now called after bus_scan is done but seperated from discovery. DOMAIN is highlighted in above bullet because the OpenIPMI ipmi_domain_reread_sel call will read SELs from all MC discovered as active from the bus_scan. The IPMI plug-in saves pointers to the MC which can have an SEL in the oh_event structure. Thus, when an SEL call comes in on the RPT with SEL_CAPABLE, the mc_id is retrieved and we get the correct SEL for the requested MC.

Original comment by: tariqx

mohandev2 commented 20 years ago

Logged In: YES user_id=118691

Sample out put from hpisensor: rptentry[0] resourceid=21 tag: system_chassis rptentry[0] resourceid=22 tag: Management Controller(0, 20) rptentry[0] resourceid=30 tag: Management Controller(0, c0) rptentry[0] resourceid=29 tag: Management Controller(0, 28)

real 3m1.882s user 0m25.020s sys 0m50.850s

This test is on an IPMI 1.5 system with Fedora Core 1, Kernel 2.4 and IPMI kernel driver without High Res Timers. The hpisensor test was ran over LAN and the listner on the IPMI system was the IPMILAN daemon going to the system interface.

This is 50% improvement, and can be enhanced with adding HRT and going to the LAN interface directly associated with the BMC.

Original comment by: tariqx

mohandev2 commented 20 years ago

Logged In: YES user_id=602195

This isn't really fixed. From 6 minutes to 3 min is an improvement, but more work is needed.

Original comment by: arcress