Date: Thu, 24 Apr 2008 10:57:07 -0500 From: Dan Nelson <dnelson@allantgroup.com> To: Tim Stoddard <tim_stoddard@hotmail.com> Cc: freebsd-stable@freebsd.org Subject: Re: auto_nlist failed on cp_time at location 1 Message-ID: <20080424155706.GB81245@dan.emsphone.com> In-Reply-To: <BAY112-W46FCE6DD0A53179D07B499FFE20@phx.gbl> References: <BAY112-W393CA2AD5ACD5E09A6AB17FFE30@phx.gbl> <20080424013421.GF99910@dan.emsphone.com> <BAY112-W14A4215BAA32EA926B6D3BFFE20@phx.gbl> <BAY112-W46FCE6DD0A53179D07B499FFE20@phx.gbl>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
In the last episode (Apr 24), Tim Stoddard said:
> I applied your patch by hand and recompiled/reinstalled net-snmp,
> however I am still seeing the same error just on a different memory
> address now.
>
> Apr 24 10:16:41 shaggy snmpd[73273]: kvm_read(*, 1, 0xbf7fe830, 20) = -1: kvm_read: Bad address
> Apr 24 10:16:41 shaggy snmpd[73273]: auto_nlist failed on cp_time at location 1
> Apr 24 10:16:46 shaggy snmpd[73273]: kvm_read(*, 1, 0xbf7fe830, 20) = -1: kvm_read: Bad address
> Apr 24 10:16:46 shaggy snmpd[73273]: auto_nlist failed on cp_time at location 1
> Apr 24 10:16:51 shaggy snmpd[73273]: kvm_read(*, 1, 0xbf7fe830, 20) = -1: kvm_read: Bad address
> Apr 24 10:16:51 shaggy snmpd[73273]: auto_nlist failed on cp_time at location 1
Hm. It looks like net-snmp has two different pieces of code that both
do the same thing (read CPU and vmstat info). I wonder which OIDs
trigger them on your system? On my system, walking
enterprises.ucdavis.systemStats uses the cpu_nlist.c code. Here's a
patch for the other file (vmstat_freebsd2.c); it's not even compiled on
my 7-stable system, so I can't verify that it's correct. I'm not sure
why my first patch didn't apply; I attached it straight out of my
net-snmp/files/ directory.
--
Dan Nelson
dnelson@allantgroup.com
[-- Attachment #2 --]
--- agent/mibgroup/ucd-snmp/vmstat_freebsd2.c 2008-04-24 10:25:59.834152091 -0500
+++ agent/mibgroup/ucd-snmp/vmstat_freebsd2.c 2008-04-24 10:25:59.834152091 -0500
@@ -189,13 +189,15 @@
* Update structures (only if time has passed)
*/
if (time_new != time_old) {
+ int size;
time_diff = time_new - time_old;
time_old = time_new;
/*
* CPU usage
*/
- auto_nlist(CPTIME_SYMBOL, (char *) cpu_new, sizeof(cpu_new));
+ size = sizeof(cpu_new);
+ sysctlbyname("kern.cp_time", &cpu_new, &size, NULL, 0);
cpu_total = 0;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080424155706.GB81245>
