Messages in this thread | | | Date | Thu, 7 Jul 2011 11:21:02 +0200 | From | Robert Richter <> | Subject | Re: [RFC] [PATCH] perf: Attaching an event to a specific PMU |
| |
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
| |