This version of HBAnyware only works with hp-lpfc version 8.0.16.40_p2
Para actualizar el firmware de las tarjetas de fibra Emulex se usa el programa HBAnyware que mediante entorno gráfico entre otros muchos datos, podremos actualizar dicho firmware.
Nos ponemos manos a la obra para instalar HBAnyware:
#./HP_ElxApps-26-3.4a16-8.0.16.40_p2.bin
This version of HBAnyware only works with hp-lpfc version 8.0.16.40_p2
Sin llegar a hacer nada, se queja de que la versión del driver que tenemos instalado para la fibra no es el correcto así que vamos a comprobarlo:
# rpm -qa | grep hp-lpfc hp-lpfc-8.0.16.40-11 # rpm -qi hp-lpfc-8.0.16.40-11 Name : hp-lpfc Relocations: (not relocatable) Version : 8.0.16.40 Vendor: Hewlett-Packard Release : 11 Build Date: Mon Jan 12 16:13:48 2009 Install Date: Fri May 8 01:03:48 2009 Build Host: dolt.usa.hp.com Group : System Environment/Kernel Source RPM: hp-lpfc-8.0.16.40-11.src.rpm Size : 2504761 License: proprietary Signature : (none) Packager : Hewlett-Packard Company URL : http://www.hp.com Summary : HP Supported Emulex FC HBA Driver [...] Software Versions Base Driver - 8.0.16.40_p2 Ioctl Driver - 2.0.30_p2
Como podemos ver, la versión que necesita el HBAanyware y la que hay instalada es la misma:
“only works with hp-lpfc version 8.0.16.40_p2″
“Base Driver – 8.0.16.40_p2″
No obstante vamos a asegurando consultado al modulo que tenemos cargado:
# modinfo lpfc | grep version version: 0:8.0.16.40_p2 6DB916C7EF7800FBB37F7D0
Las versiónes que indica el rpm así como el módulo que tenemos cargado coinciden.
El fichero de instalación del programa, es un script por lo que echándole un vistazo encontramos la función que chequea la compatibilidad de las versiones:
DRVVER="8.0.16.40_p2"
[...]
check_driver_version () {
INSTALLEDDRV="`rpm -q hp-lpfc | awk 'BEGIN {FS="-"} {print $3}'`"
if [ "$INSTALLEDDRV" != "$DRVVER" ]
then
echo "This version of HBAnyware only works with hp-lpfc version $DRVVER"
exit 1
fi
}
La comprobación la realiza con un rpm -qa y como hemos podido ver, la versión instalada 8.0.16.40_p2 es la misma que la requerida, pero sin embargo, por alguna razón que desconozco en el rpm el nombre del paquete, no aparece el “_p2″, si alguien conoce el motivo, que lo comente
Para poder instalar el HBAnyware y poder actualizar el firmware lo que debemos hacer tras asegurarnos que tenemos las versiones requeridas es comentar el if completo que aparece en la función que chequea las versiones !y todo listo!