Bug 1070075

Summary: SNMP HRPROCESSORLOAD RETURNS INCORRECT VALUES FOR PROCESSOR #'S > 100
Product: Red Hat Enterprise Linux 6 Reporter: Jan Safranek <jsafrane>
Component: net-snmpAssignee: Jan Safranek <jsafrane>
Status: CLOSED ERRATA QA Contact: Marek Haicman <mhaicman>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 6.5CC: dapospis, jianhai.luan, joe.jin, ksrot, mhaicman
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Previously, snmpd did not expect that the CPU number can have more than two digits. As a consequence, snmpd did not show more than 100 processors in the "HOST-RESOURCES-MIB::hrProcessorTable" object when reading CPU statistics. With this update, snmpd has been modified to no longer make assumptions about the CPU ID length. As a result, "HOST-RESOURCES-MIB::hrProcessorTable" now shows all CPUs.
Story Points: ---
Clone Of: 1069979 Environment:
Last Closed: 2015-07-22 07:22:35 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1069979, 1070076    
Bug Blocks:    

Description Jan Safranek 2014-02-26 08:21:42 UTC
+++ This bug was initially created as a clone of Bug #1069979 +++

Description of problem:
using snmp monitor cpu usage with more than 100 processors. hrProcessorLoad will returns incorrect values for processor #'s > 100

Version-Release number of selected component (if applicable):
RHEL 5.x RHEL 6.x

How reproducible:

Steps to Reproduce:
1. using snmp monitor cpu usage with more than 100 processors.

Actual results:
hrProcessorLoad will return incorrect values for processor #'s

Expected results:
hrProcessorLoad will return correct values for processor #'s (letter than 100)

Additional info:
http://mailing.unix.net-snmp-users.narkive.com/o21D50GY/hrprocessorload-returns-incorrect-values-for-processor-s-100

The file agent/mibgroup/hardware/cpu/cpu_linux.c: netsnmp_cpu_arch_load() use below  hard code to skip cpuN
  b1 = b2+5; /* Skip "cpuN " */

When processor more than 100, the value will be wrong.

--- Additional comment from Luan Jianhai on 2014-02-25 21:41:40 EST ---

The patch have be applied to net-snmp upstream:
  http://git.code.sf.net/p/net-snmp/code: 
commit eef2f64b46357b353c79504bc593535ebe7421e7
Author: Niels Baggesen <nba.net>
Date:   Thu Jan 23 16:27:07 2014 +0100

    cpu_linux: support systems with more than 100 cpus.

Comment 5 errata-xmlrpc 2015-07-22 07:22:35 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHSA-2015-1385.html