• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Fusion inventory et HP 11.11 / PA Risc / pas de cpu pas de mémoire
#1
Bonjour,

En testant l'agent 2.1.7 sur un HP 9000 PA risc / HP UX 11.11 je me suis aperçu qu'il ne retournait pas la mémoire
et le modèle de CPU.

Ces deux patch peuvent corriger le problème :

$ diff -Naur CPU.pm.orig CPU.pm
--- CPU.pm.orig 2010-12-04 13:29:29.000000000 +0100
+++ CPU.pm 2011-03-18 16:13:30.000000000 +0100
@@ -21,7 +21,7 @@
my $params = shift;
my $inventory = $params->{inventory};

- my $CPUinfo = { MANUFACTURER => 'unknow', TYPE => 'unknow', SERIAL => 'No Serial Number available!', SPEED => 0 };
+ my $CPUinfo = { MANUFACTURER => 'unknow', NAME => 'unknow', SERIAL => 'No Serial Number available!', SPEED => 0 };
my $CPUcount;

# Using old system HpUX without machinfo
@@ -65,7 +65,7 @@
if (/Number of CPUs = (\d+)/) {
$CPUcount = $1;
} elsif (/processor model: \d+ (.+)$/) {
- $CPUinfo->{TYPE} = $1;
+ $CPUinfo->{NAME} = $1;
} elsif (/Clock speed = (\d+) MHz/) {
$CPUinfo->{SPEED} = $1;
} elsif (/vendor information =\W+(\w+)/) {
@@ -85,13 +85,15 @@
} else {
chomp(my $DeviceType =`model |cut -f 3- -d/`);
my $tempCpuInfo = $cpuInfos{"$DeviceType"};
- if ( $tempCpuInfo =~ /^(\S+)\s(\S+)/ ) {
- $CPUinfo->{TYPE} = $1;
- $CPUinfo->{SPEED} = $2;
+ if (defined $tempCpuInfo) {
+ if ( $tempCpuInfo =~ /^(\S+)\s(\S+)/ ) {
+ $CPUinfo->{NAME} = $1;
+ $CPUinfo->{SPEED} = $2;
+ }
} else {
for ( `echo 'sc product cpu;il' | /usr/sbin/cstm | grep "CPU Module"` ) {
- if ( /(\S+)\s+CPU\s+Module/ ) {
- $CPUinfo->{TYPE} = $1;
+ if ( /\s+(\S+)\s+CPU\s+Module/ ) {
+ $CPUinfo->{NAME} = $1;
}
}
for ( `echo 'itick_per_usec/D' | adb -k /stand/vmunix /dev/kmem` ) {
@@ -106,11 +108,11 @@

my $serie;
chomp($serie = `uname -m`);
- if ( $CPUinfo->{TYPE} eq 'unknow' and $serie =~ /ia64/) {
- $CPUinfo->{TYPE} = "Itanium"
+ if ( $CPUinfo->{NAME} eq 'unknow' and $serie =~ /ia64/) {
+ $CPUinfo->{NAME} = "Itanium"
}
if ( $serie =~ /9000/) {
- $CPUinfo->{TYPE} = "PA" . $CPUinfo->{TYPE};
+ $CPUinfo->{NAME} = "PA" . $CPUinfo->{NAME};
}

foreach ( 1..$CPUcount ) { $inventory->addCPU($CPUinfo) }

--- Memory.pm.orig 2010-12-04 13:29:29.000000000 +0100
+++ Memory.pm 2011-03-18 16:13:45.000000000 +0100
@@ -62,7 +62,7 @@
$ok=0;
#print "FRU Source memory\n";
}
- if ( /Source\s+Detail\s+=\s4/ ) {
+ if ( /Source\s+Detail\s+=\s0x4/ ) {
$ok=1;
#print "Source Detail IMM\n";
}
@@ -71,7 +71,7 @@
#print "Extended sub $subnumslot\n";
};
if ( /DIMMS\s+Rank\s+=\s+(\S+)/ ) {
- $numslot=sprintf("%02x",$1);
+ $numslot=sprintf("%02x",hex($1));
#print "Num slot $numslot\n";
}

Par ailleurs, pour les personnes intéressées j'ai une version packagée de l'agent pour PA-Risc / HP UX 11.11
( un endroit ou l'uploader ? )

Merci,
  Reply


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)