Re: [PATCH 3/6] 2.6.16-rc1 perfmon2 patch for review

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Greg,

On Wed, Jan 25, 2006 at 09:24:19PM -0800, Greg KH wrote:
> On Wed, Jan 25, 2006 at 08:55:10PM -0800, Stephane Eranian wrote:
> > Greg,
> > 
> > On Wed, Jan 25, 2006 at 03:52:04PM -0800, Greg KH wrote:
> > > On Wed, Jan 25, 2006 at 12:08:13PM -0800, Bryan O'Sullivan wrote:
> > > > On Tue, 2006-01-24 at 07:09 -0800, Stephane Eranian wrote:
> > > > 
> > > > > Because I tried regrouping all the /proc AND related interface into a single
> > > > > C file.
> > > > 
> > > > sysctls seem to be every bit as deprecated as /proc for what you are
> > > > tring to do.
> > > > 
> > > > > Well, it is not clear to me what criteria is used for /sys vs /proc.
> > > > 
> > > > My understanding is that only process-related stuff belongs in /proc
> > > > now.  Other random cruft that has accumulated over the years is left
> > > > there for backwards compatibility, but /sys interfaces are the way
> > > > forward now.
> > > 
> > > Yes, that is exactly right.
> > > 
> > I don't have a problem moving the perfmon stuff to /sys, except for
> > /proc/perfmon which is already being used by a bunch of tools. Unless
> > we duplicate the information or use a simlink (if that's possible).
> 
> symlink will not work, sorry.
> 
> > Please indicate a location in the /sys tree where these would fit:
> > 
> > /proc/perfmon

This one contains statistics about perfmon such as PMU model, number of active
sessions, and also a bunch of per-cpu statistics (see attached file).

$ cat /proc/perfmon
perfmon version            : 2.2
PMU model                  : Intel Pentium M
PMU description version    : 1.0
counter width              : 31
loaded per-thread sessions : 0
loaded sys-wide   sessions : 0
current smpl buffer memory : 0
format                     : d1-39-b2-9e-62-e8-40-e4-b4-02-73-07-87-92-e9-37 default_format2
CPU0   total ovfl intrs    : 0
CPU0     spurious intrs    : 0
CPU0     replay   intrs    : 0
CPU0     regular  intrs    : 0
CPU0   overflow cycles     : 0
CPU0   overflow phase1     : 0
CPU0   overflow phase2     : 0
CPU0   overflow phase3     : 0
CPU0   smpl handler calls  : 0
CPU0   smpl handler cycles : 0
CPU0   set switch count    : 0
CPU0   set switch cycles   : 0
CPU0   handle timeout      : 0
CPU0   owner task          : -1
CPU0   owner context       : 00000000
CPU0   activations         : 0



> > /proc/perfmon_map

This one contains PMU register mapping information. On My laptop, it shows:
% cat /proc/perfmon_map
PMC0:0x100000:0xffcfffff:PERFSEL0
PMC1:0x100000:0xffcfffff:PERFSEL1
PMD0:0x0:0xffffffffffffffff:PERFCTR0
PMD1:0x0:0xffffffffffffffff:PERFCTR1

> 
> What are the contents of these files?
> 
> > These are currently sysctl():
> > 
> > /proc/sys/kernel/perfmon/arg_size_max
> > /proc/sys/kernel/perfmon/debug
> > /proc/sys/kernel/perfmon/debug_ovfl
> > /proc/sys/kernel/perfmon/expert_mode
> > /proc/sys/kernel/perfmon/reset_stats
> > /proc/sys/kernel/perfmon/smpl_buf_size_max
> > /proc/sys/kernel/perfmon/sys_group
> > /proc/sys/kernel/perfmon/task_group
> > 
> 
> What are the contents of these different files?

One integer value per file.

> 
> Remember that sysfs is one value per file, so sysctls translate usually
> very easily to sysfs files.
> 
Yes, that should be fairly easy.

> You can always just use /sys/kernel/perfmon/ if you like, as I don't
> think you are bound to anything that would be in the /sys/devices tree
> (you don't export per-cpu statistics, right?)
> 
Well, /proc/perfmon does expose per-cpu stats.

-- 

-Stephane
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux