"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "src/pmdas/linux/pmda.c" between
pcp-6.0.2.tar.gz and pcp-6.0.3.tar.gz

About: PCP (Performance Co-Pilot) provides a framework and services to support system-level performance monitoring and management.

pmda.c  (pcp-6.0.2):pmda.c  (pcp-6.0.3)
skipping to change at line 6882 skipping to change at line 6882
{ NULL, {PMDA_PMID(CLUSTER_TTY,TTY_BRK), PM_TYPE_U32, TTY_INDOM, { NULL, {PMDA_PMID(CLUSTER_TTY,TTY_BRK), PM_TYPE_U32, TTY_INDOM,
PM_SEM_COUNTER, PMDA_PMUNITS(0,0,0,0,0,0)} }, PM_SEM_COUNTER, PMDA_PMUNITS(0,0,0,0,0,0)} },
/* tty.serial.overrun */ /* tty.serial.overrun */
{ NULL, {PMDA_PMID(CLUSTER_TTY,TTY_OVERRUN), PM_TYPE_U32, TTY_INDOM, { NULL, {PMDA_PMID(CLUSTER_TTY,TTY_OVERRUN), PM_TYPE_U32, TTY_INDOM,
PM_SEM_COUNTER, PMDA_PMUNITS(0,0,0,0,0,0)} }, PM_SEM_COUNTER, PMDA_PMUNITS(0,0,0,0,0,0)} },
/* tty.serial.irq */ /* tty.serial.irq */
{ NULL, {PMDA_PMID(CLUSTER_TTY,TTY_IRQ), PM_TYPE_U32, TTY_INDOM, { NULL, {PMDA_PMID(CLUSTER_TTY,TTY_IRQ), PM_TYPE_U32, TTY_INDOM,
PM_SEM_DISCRETE, PMDA_PMUNITS(0,0,0,0,0,0)} }, PM_SEM_DISCRETE, PMDA_PMUNITS(0,0,0,0,0,0)} },
/* /*
* /proc/pressure/{cpu,memory,io} clusters * /proc/pressure/{cpu,memory,io,irq} clusters
*/ */
/* kernel.all.pressure.cpu.some.avg */ /* kernel.all.pressure.cpu.some.avg */
{ NULL, { PMDA_PMID(CLUSTER_PRESSURE_CPU,0), PM_TYPE_FLOAT, { NULL, { PMDA_PMID(CLUSTER_PRESSURE_CPU,0), PM_TYPE_FLOAT,
PRESSUREAVG_INDOM, PM_SEM_INSTANT, PMDA_PMUNITS(0,0,0,0,0,0) } }, PRESSUREAVG_INDOM, PM_SEM_INSTANT, PMDA_PMUNITS(0,0,0,0,0,0) } },
/* kernel.all.pressure.cpu.some.total */ /* kernel.all.pressure.cpu.some.total */
{ NULL, { PMDA_PMID(CLUSTER_PRESSURE_CPU,1), PM_TYPE_U64, PM_INDOM_NULL, { NULL, { PMDA_PMID(CLUSTER_PRESSURE_CPU,1), PM_TYPE_U64, PM_INDOM_NULL,
PM_SEM_COUNTER, PMDA_PMUNITS(0,1,0,0,PM_TIME_USEC,0)}}, PM_SEM_COUNTER, PMDA_PMUNITS(0,1,0,0,PM_TIME_USEC,0)}},
/* kernel.all.pressure.memory.some.avg */ /* kernel.all.pressure.memory.some.avg */
{ NULL, { PMDA_PMID(CLUSTER_PRESSURE_MEM,0), PM_TYPE_FLOAT, { NULL, { PMDA_PMID(CLUSTER_PRESSURE_MEM,0), PM_TYPE_FLOAT,
PRESSUREAVG_INDOM, PM_SEM_INSTANT, PMDA_PMUNITS(0,0,0,0,0,0) } }, PRESSUREAVG_INDOM, PM_SEM_INSTANT, PMDA_PMUNITS(0,0,0,0,0,0) } },
skipping to change at line 6914 skipping to change at line 6914
PRESSUREAVG_INDOM, PM_SEM_INSTANT, PMDA_PMUNITS(0,0,0,0,0,0) } }, PRESSUREAVG_INDOM, PM_SEM_INSTANT, PMDA_PMUNITS(0,0,0,0,0,0) } },
/* kernel.all.pressure.io.some.total */ /* kernel.all.pressure.io.some.total */
{ NULL, { PMDA_PMID(CLUSTER_PRESSURE_IO,1), PM_TYPE_U64, PM_INDOM_NULL, { NULL, { PMDA_PMID(CLUSTER_PRESSURE_IO,1), PM_TYPE_U64, PM_INDOM_NULL,
PM_SEM_COUNTER, PMDA_PMUNITS(0,1,0,0,PM_TIME_USEC,0)}}, PM_SEM_COUNTER, PMDA_PMUNITS(0,1,0,0,PM_TIME_USEC,0)}},
/* kernel.all.pressure.io.full.avg */ /* kernel.all.pressure.io.full.avg */
{ NULL, { PMDA_PMID(CLUSTER_PRESSURE_IO,2), PM_TYPE_FLOAT, { NULL, { PMDA_PMID(CLUSTER_PRESSURE_IO,2), PM_TYPE_FLOAT,
PRESSUREAVG_INDOM, PM_SEM_INSTANT, PMDA_PMUNITS(0,0,0,0,0,0) } }, PRESSUREAVG_INDOM, PM_SEM_INSTANT, PMDA_PMUNITS(0,0,0,0,0,0) } },
/* kernel.all.pressure.io.full.total */ /* kernel.all.pressure.io.full.total */
{ NULL, { PMDA_PMID(CLUSTER_PRESSURE_IO,3), PM_TYPE_U64, PM_INDOM_NULL, { NULL, { PMDA_PMID(CLUSTER_PRESSURE_IO,3), PM_TYPE_U64, PM_INDOM_NULL,
PM_SEM_COUNTER, PMDA_PMUNITS(0,1,0,0,PM_TIME_USEC,0)}}, PM_SEM_COUNTER, PMDA_PMUNITS(0,1,0,0,PM_TIME_USEC,0)}},
/* kernel.all.pressure.irq.full.avg */
{ NULL, { PMDA_PMID(CLUSTER_PRESSURE_IRQ,0), PM_TYPE_FLOAT,
PRESSUREAVG_INDOM, PM_SEM_INSTANT, PMDA_PMUNITS(0,0,0,0,0,0) } },
/* kernel.all.pressure.irq.full.total */
{ NULL, { PMDA_PMID(CLUSTER_PRESSURE_IRQ,1), PM_TYPE_U64, PM_INDOM_NULL,
PM_SEM_COUNTER, PMDA_PMUNITS(0,1,0,0,PM_TIME_USEC,0)}},
/* /*
* Fibre Channel host metrics cluster * Fibre Channel host metrics cluster
*/ */
/* fchost.in.frames */ /* fchost.in.frames */
{ NULL, { PMDA_PMID(CLUSTER_FCHOST, FCHOST_IN_FRAMES), PM_TYPE_U64, { NULL, { PMDA_PMID(CLUSTER_FCHOST, FCHOST_IN_FRAMES), PM_TYPE_U64,
FCHOST_INDOM, PM_SEM_COUNTER, PMDA_PMUNITS(0,0,1,0,0,PM_COUNT_ONE) }, }, FCHOST_INDOM, PM_SEM_COUNTER, PMDA_PMUNITS(0,0,1,0,0,PM_COUNT_ONE) }, },
/* fchost.out.frames */ /* fchost.out.frames */
{ NULL, { PMDA_PMID(CLUSTER_FCHOST, FCHOST_OUT_FRAMES), PM_TYPE_U64, { NULL, { PMDA_PMID(CLUSTER_FCHOST, FCHOST_OUT_FRAMES), PM_TYPE_U64,
FCHOST_INDOM, PM_SEM_COUNTER, PMDA_PMUNITS(0,0,1,0,0,PM_COUNT_ONE) }, }, FCHOST_INDOM, PM_SEM_COUNTER, PMDA_PMUNITS(0,0,1,0,0,PM_COUNT_ONE) }, },
skipping to change at line 7447 skipping to change at line 7453
proc_tty_permission = 0; proc_tty_permission = 0;
} }
} }
if (need_refresh[CLUSTER_PRESSURE_CPU]) if (need_refresh[CLUSTER_PRESSURE_CPU])
refresh_proc_pressure_cpu(&proc_pressure); refresh_proc_pressure_cpu(&proc_pressure);
if (need_refresh[CLUSTER_PRESSURE_MEM]) if (need_refresh[CLUSTER_PRESSURE_MEM])
refresh_proc_pressure_mem(&proc_pressure); refresh_proc_pressure_mem(&proc_pressure);
if (need_refresh[CLUSTER_PRESSURE_IO]) if (need_refresh[CLUSTER_PRESSURE_IO])
refresh_proc_pressure_io(&proc_pressure); refresh_proc_pressure_io(&proc_pressure);
if (need_refresh[CLUSTER_PRESSURE_IRQ])
refresh_proc_pressure_irq(&proc_pressure);
if (need_refresh[CLUSTER_FCHOST]) if (need_refresh[CLUSTER_FCHOST])
refresh_sysfs_fchosts(INDOM(FCHOST_INDOM)); refresh_sysfs_fchosts(INDOM(FCHOST_INDOM));
done: done:
container_close(cp, ns_fds); container_close(cp, ns_fds);
return sts; return sts;
} }
static int static int
skipping to change at line 9572 skipping to change at line 9580
} }
} }
break; break;
case CLUSTER_PRESSURE_CPU: case CLUSTER_PRESSURE_CPU:
switch (item) { switch (item) {
case 0: /* kernel.all.pressure.cpu.some.avg */ case 0: /* kernel.all.pressure.cpu.some.avg */
if (proc_pressure.some_cpu.updated == 0) if (proc_pressure.some_cpu.updated == 0)
return 0; return 0;
if (average_proc_pressure(&proc_pressure.some_cpu, inst, atom) < 0) if (average_proc_pressure(&proc_pressure.some_cpu, inst, atom) < 0)
return PM_ERR_INST; return PM_ERR_INST;
break; break;
case 1: /* kernel.all.pressure.cpu.some.total */ case 1: /* kernel.all.pressure.cpu.some.total */
if (proc_pressure.some_cpu.updated == 0) if (proc_pressure.some_cpu.updated == 0)
return 0; return 0;
atom->ull = proc_pressure.some_cpu.total; atom->ull = proc_pressure.some_cpu.total;
break; break;
default: default:
return PM_ERR_PMID; return PM_ERR_PMID;
} }
break; break;
case CLUSTER_PRESSURE_MEM: case CLUSTER_PRESSURE_MEM:
switch (item) { switch (item) {
case 0: /* kernel.all.pressure.memory.some.avg */ case 0: /* kernel.all.pressure.memory.some.avg */
if (proc_pressure.some_mem.updated == 0) if (proc_pressure.some_mem.updated == 0)
return 0; return 0;
if (average_proc_pressure(&proc_pressure.some_mem, inst, atom) < 0) if (average_proc_pressure(&proc_pressure.some_mem, inst, atom) < 0)
return PM_ERR_INST; return PM_ERR_INST;
break; break;
case 1: /* kernel.all.pressure.memory.some.total */ case 1: /* kernel.all.pressure.memory.some.total */
if (proc_pressure.some_mem.updated == 0) if (proc_pressure.some_mem.updated == 0)
return 0; return 0;
atom->ull = proc_pressure.some_mem.total; atom->ull = proc_pressure.some_mem.total;
break; break;
case 2: /* kernel.all.pressure.memory.full.avg */ case 2: /* kernel.all.pressure.memory.full.avg */
if (proc_pressure.full_mem.updated == 0) if (proc_pressure.full_mem.updated == 0)
return 0; return 0;
if (average_proc_pressure(&proc_pressure.full_mem, inst, atom) < 0) if (average_proc_pressure(&proc_pressure.full_mem, inst, atom) < 0)
return PM_ERR_INST; return PM_ERR_INST;
break; break;
case 3: /* kernel.all.pressure.memory.full.total */ case 3: /* kernel.all.pressure.memory.full.total */
if (proc_pressure.full_mem.updated == 0) if (proc_pressure.full_mem.updated == 0)
return 0; return 0;
atom->ull = proc_pressure.full_mem.total; atom->ull = proc_pressure.full_mem.total;
break; break;
default: default:
return PM_ERR_PMID; return PM_ERR_PMID;
} }
break; break;
case CLUSTER_PRESSURE_IO: case CLUSTER_PRESSURE_IO:
switch (item) { switch (item) {
case 0: /* kernel.all.pressure.io.some.avg */ case 0: /* kernel.all.pressure.io.some.avg */
if (proc_pressure.some_io.updated == 0) if (proc_pressure.some_io.updated == 0)
return 0; return 0;
if (average_proc_pressure(&proc_pressure.some_io, inst, atom) < 0) if (average_proc_pressure(&proc_pressure.some_io, inst, atom) < 0)
return PM_ERR_INST; return PM_ERR_INST;
break; break;
case 1: /* kernel.all.pressure.io.some.total */ case 1: /* kernel.all.pressure.io.some.total */
if (proc_pressure.some_io.updated == 0) if (proc_pressure.some_io.updated == 0)
return 0; return 0;
atom->ull = proc_pressure.some_io.total; atom->ull = proc_pressure.some_io.total;
break; break;
case 2: /* kernel.all.pressure.io.full.avg */ case 2: /* kernel.all.pressure.io.full.avg */
if (proc_pressure.full_io.updated == 0) if (proc_pressure.full_io.updated == 0)
return 0; return 0;
if (average_proc_pressure(&proc_pressure.full_io, inst, atom) < 0) if (average_proc_pressure(&proc_pressure.full_io, inst, atom) < 0)
return PM_ERR_INST; return PM_ERR_INST;
break; break;
case 3: /* kernel.all.pressure.io.full.total */ case 3: /* kernel.all.pressure.io.full.total */
if (proc_pressure.full_io.updated == 0) if (proc_pressure.full_io.updated == 0)
return 0; return 0;
atom->ull = proc_pressure.full_io.total; atom->ull = proc_pressure.full_io.total;
break; break;
default: default:
return PM_ERR_PMID; return PM_ERR_PMID;
} }
break; break;
case CLUSTER_PRESSURE_IRQ:
switch (item) {
case 0: /* kernel.all.pressure.irq.full.avg */
if (proc_pressure.full_irq.updated == 0)
return 0;
if (average_proc_pressure(&proc_pressure.full_irq, inst, atom) < 0)
return PM_ERR_INST;
break;
case 1: /* kernel.all.pressure.irq.full.total */
if (proc_pressure.full_irq.updated == 0)
return 0;
atom->ull = proc_pressure.full_irq.total;
break;
default:
return PM_ERR_PMID;
}
break;
case CLUSTER_FCHOST: case CLUSTER_FCHOST:
if (item == FCHOST_HINV_NFCHOST) { if (item == FCHOST_HINV_NFCHOST) {
/* hinv.nfchost */ /* hinv.nfchost */
atom->ul = pmdaCacheOp(INDOM(FCHOST_INDOM), PMDA_CACHE_SIZE_ACTIVE); atom->ul = pmdaCacheOp(INDOM(FCHOST_INDOM), PMDA_CACHE_SIZE_ACTIVE);
} }
else { else {
/* /*
* fchost.* metrics are direct indexed by item, see sysfs_fchost.h * fchost.* metrics are direct indexed by item, see sysfs_fchost.h
*/ */
fchost_t *fchost = NULL; fchost_t *fchost = NULL;
 End of changes. 9 change blocks. 
6 lines changed or deleted 32 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)