Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp3468968pxk; Mon, 28 Sep 2020 19:44:10 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzFTFpm1ZxIocvEa6em7e9jkKRQ4sJAzDqnLLYf8GzWFkqO571jB0nyOr9hXQeJ4UdlmDpA X-Received: by 2002:a17:906:8258:: with SMTP id f24mr1625331ejx.551.1601347449854; Mon, 28 Sep 2020 19:44:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601347449; cv=none; d=google.com; s=arc-20160816; b=e1LhZHh+Q+BIE533pPvDCLiM+cE6sqK4Q8zIeqDjg7uz4/UH1wGWdlvms42Su3J+6a RghoZ97d6TB+UamjpTgDpTrUEPR3CeSl2xj1KX24sMTVlm0k6ARJWXop4obR1bSyisdE D0HbpwyP4cknCOkxAbpUiiKXEhQLm4v9KGHIoxthE5ZsFrJ/zobvFgYxKlEgGPH/nHt4 Ct/a7CC16kgIS4oN2LFwHj+SSIt9Xd3eiSkU8v/M4iSTR8aqerslCcMEWDLPEwMypNpq aoqBZGvFJmkfGoqZzwnFUONa36gmalaMaV7hUWktZQ1n1qszdnYM8+U8OPfDSAJ4IB/6 5IeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=fbc1lcCGDpp0UFtSs8QzYlmJsm/rD/UeMz9MAOm88nE=; b=NZsPE7jtKEUzM0rhW1nHH2brMnU5UxXwtQ/wRpfZCDWBwKvgeSOr9JqjK8KDQkon7s XXEl0hxiwkr9gGOuYiEJQJpC6uVjHd6F7AjBva9P3og6gUe2CuWB6rG6T5kCk2bNsHEM Dr3jpra9c5RbICCdX6VaffkXLv0tYYs8psdERIl1jeN485gpRb7PewuvedlQ6rpFptAA b6H6ZVWcqzwy3vfhSDKEtVsT5sJ2ilgpZX0iB7JoWXQAV0I/yDaaaJhFKP/dIKLXLoyO wYywr2difgcjaCj2E6r+1BMgkAnrbRK6+vbzprk4aNMqhC6aAjkfSwZxAH7TkAvf8XqO RGMA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=TMIcx72o; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id lv10si1952770ejb.483.2020.09.28.19.43.39; Mon, 28 Sep 2020 19:44:09 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=TMIcx72o; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727663AbgI2ClN (ORCPT + 99 others); Mon, 28 Sep 2020 22:41:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40014 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727382AbgI2CkW (ORCPT ); Mon, 28 Sep 2020 22:40:22 -0400 Received: from mail-pf1-x42a.google.com (mail-pf1-x42a.google.com [IPv6:2607:f8b0:4864:20::42a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ED611C0613CE; Mon, 28 Sep 2020 19:40:21 -0700 (PDT) Received: by mail-pf1-x42a.google.com with SMTP id q123so3100235pfb.0; Mon, 28 Sep 2020 19:40:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=fbc1lcCGDpp0UFtSs8QzYlmJsm/rD/UeMz9MAOm88nE=; b=TMIcx72oBWxWulPh+5N4DaXnvovBcrq64S9WiPND81r4UL8MT4XAYHYznl/k84SMCg 5QSAXYUDFWa8z2Ad9gH73bqOxp6RYHso6hMdp89472zKAMl9B6M4sQddlZrrkrnigqS4 AzyiJzAbwVKoYJw0npojJXkTWP7b3YDYO71WbtPRKGYFqXC/xPF+31jb5JrWzCi0qO4K Do0V8vKC8DlyKgCvdrhnP6tw6iyYQNKMnO//sen/PaMaOLIjsihnrCx5dkcyqMuQ0u4H apRSIz8gQlcbqdgF19jmi5i1fq4CUQSbuUhzBXlSq04mvUjGZsr83tsHMO9PMG1L8J/E AG1Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to; bh=fbc1lcCGDpp0UFtSs8QzYlmJsm/rD/UeMz9MAOm88nE=; b=HcRwnLWAxzElVAeeMDu4e0wxdHBgCn/uMH+alDd6MYOLXPvum9zL/9mXXAigNpr7M/ HVSzdaYHPpGgDmEfk6I2eBiFdxK+CgU9TlOpvL21CVccbMk//bDbx065zLXFb2gYRHOL rM3/wuiJB5y4rYfG9aVXLMIzpW+df4BHdk3+xvHDj94Usz5kRWedocwOjqaNd/1/9pD/ 3V92VW0tIMKw0TgNC/JWhjqwn1s9B3o57oz/+ePkDkI1gWKz2zLoIomtvAOti5SkrMj8 evKEFie/L8lEx9itv2T3Q1Jq5TV5L593jX5cUjvGb4R827go37cQLE+Jjpv1Bvgl3b/Z ibnA== X-Gm-Message-State: AOAM531Lf2ycAI67PSeapi9ScDlT8qR2NbIOcQTZBJHOsO9zZjBa8jit +c0YlBVl2EFjEzV829FOyag= X-Received: by 2002:a63:1620:: with SMTP id w32mr1537645pgl.73.1601347221373; Mon, 28 Sep 2020 19:40:21 -0700 (PDT) Received: from localhost ([2409:10:2e40:5100:6e29:95ff:fe2d:8f34]) by smtp.gmail.com with ESMTPSA id k24sm3106966pfg.148.2020.09.28.19.40.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 28 Sep 2020 19:40:20 -0700 (PDT) Date: Tue, 29 Sep 2020 11:40:18 +0900 From: Sergey Senozhatsky To: Alexey Dobriyan , Andrew Morton , Vlastimil Babka , Kees Cook , Matthew Wilcox Cc: Sergey Senozhatsky , linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org Subject: Re: [RFC] process /proc/PID/smaps vs /proc/PID/smaps_rollup Message-ID: <20200929024018.GA529@jagdpanzerIV.localdomain> References: <20200929020520.GC871730@jagdpanzerIV.localdomain> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200929020520.GC871730@jagdpanzerIV.localdomain> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On (20/09/29 11:05), Sergey Senozhatsky wrote: > Hello, > > One of our unprivileged daemon process needs process PSS info. That > info is usually available in /proc/PID/smaps on per-vma basis, on > in /proc/PID/smaps_rollup as a bunch of accumulated per-vma values. > The latter one is much faster and simpler to get, but, unlike smaps, > smaps_rollup requires PTRACE_MODE_READ, which we don't want to > grant to our unprivileged daemon. > > So the question is - can we get, somehow, accumulated PSS info from > a non-privileged process? (Iterating through all process' smaps > vma-s consumes quite a bit of CPU time). This is related to another > question - why do smaps and smaps_rollup have different permission > requirements? Hold on, seems that I misread something, /proc/PID/smaps is also unavailable. So the question is, then, how do we get PSS info of a random user-space process from an unprivileged daemon? -ss