Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751297AbaLQQgg (ORCPT ); Wed, 17 Dec 2014 11:36:36 -0500 Received: from mail-ob0-f174.google.com ([209.85.214.174]:37764 "EHLO mail-ob0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751047AbaLQQge (ORCPT ); Wed, 17 Dec 2014 11:36:34 -0500 MIME-Version: 1.0 In-Reply-To: <5490F24C.7090202@huawei.com> References: <20141215220150.GP9845@kernel.org> <5490E856.6050904@huawei.com> <5490F24C.7090202@huawei.com> Date: Wed, 17 Dec 2014 11:36:33 -0500 Message-ID: Subject: Re: [perf tool] cgroup support broken on Debian? From: Stephane Eranian To: Zefan Li Cc: Stephane Eranian , Stephane Eranian , Vince Weaver , Arnaldo Carvalho de Melo , LKML , Ingo Molnar , Peter Zijlstra , Tejun Heo Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Dec 16, 2014 at 10:02 PM, Zefan Li wrote: > On 2014/12/17 10:29, Stephane Eranian wrote: >> On Wed, Dec 17, 2014 at 3:20 AM, Zefan Li wrote: >>> On 2014/12/17 1:17, Vince Weaver wrote: >>>> On Mon, 15 Dec 2014, Stephane Eranian wrote: >>>>> On Mon, Dec 15, 2014 at 11:01 PM, Arnaldo Carvalho de Melo wrote: >>>> >>>>> fs is visible. The cgroup file system type is not there anymore. They are using >>>>> tmpfs which is not ideal to detect just cgroup. Looks like now, we have to look >>>>> at the mount point which is flaky. >>>> >>>> The trivial fix is to just always assume things will be under >>>> /sys/fs/cgroup >>>> which looks like to be the new official mount point. >>>> >>>> This will break on older systems though, or systems that mount cgroupfs in >>>> multiple locations. >>>> >>>> Another alternative is to change the interface to require the full >>>> cgroupfs pathname as an argument to -G >>>> >>> >>> What's the problem here? >>> >>> none /sys/fs/cgroup tmpfs rw,relatime,size=4k,mode=755 0 0 >>> systemd /sys/fs/cgroup/systemd cgroup rw,nosuid,nodev,noexec,relatime,perf_event,name=systemd 0 0 >>> >>> cgroup is mounted in /sys/fs/cgroup/systemd, so you should pass '/' to the -G argument: >>> >> Is that the only mountpoint possible? >> The tool needs to detect a valid mount point to locate the named cgroup. >> That's assuming that if I create cgroup foo, then it appears under >> //sys/fs/cgroup/systemd/foo >> > > There can be only one cgroupfs mountpoint which has perf_event subsystem > attached to it. > > So for this setup: > > mount -t tmpfs /sys/fs/cgroup > mkdir /sys/fs/cgroup/memory > mkdir /sys/fs/cgroup/perf > mount -t cgroup -o memory memcg /sys/fs/cgroup/memory > mount -t cgroup -o perf_event perf /sys/fs/cgroup/perf > > The perf tool will locate the mountpoint as /sys/fs/cgroup/perf. > You can mount the cgroup fs for perf_event multiple times. I tried and it works, though it is useless. Vince, I think the correct way to detect which entry is for perf_event is to look for filesystem type cgroup and option perf_event. It cannot be anything else. First match is good enough. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/