Re: [RFC] [PATCH] perf: Attaching an event to a specific PMU

From: Robert Richter
Date: Thu Jul 07 2011 - 05:21:16 EST


On 06.07.11 13:12:48, Peter Zijlstra wrote:
> On Wed, 2011-07-06 at 18:53 +0200, Robert Richter wrote:

> > The system topology is always in /sys, also for device nodes. But we
> > can't get a device file descriptor from /sys. I doubt /sys is capable
> > to handle a device use count (need to be checked). We actually must
> > grab the pmu while attaching events to it. And, user space
> > implementation is must easier with /dev (see code in my previous
> > mail).
>
> Well you must not per-se, from a user's perspective there isn't much of
> a difference between if the sys_perf_event_open() fails or if the
> initial file open fails, in both cases he's not getting an event.

It is not that I want to create event handles with open. For this
there is the syscall. I use open() to create a unique reference to a
pmu in userspace. No more, and /dev is the right thing to do this.

> perf stat -e IBS:fetches will always have a fail against rmmod, rmmod
> could complete before we try to open the file (assuming IBS is a
> module).
>
> >
> > My patch also includes code that creates a device class. It is also
> > visible in /sys/class/pmu/*.
>
> So not only are you providing a duplicate of existing interfaces, you're
> actually duplicating information inside sysfs as well.

This is not duplication. /sys provides information about system
hierarchy, /dev is for controlling devices. Thus, every device node is
visible in /sys as it is part of the system.

-Robert

--
Advanced Micro Devices, Inc.
Operating System Research Center

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