Received: by 2002:a05:6a10:8c0a:0:0:0:0 with SMTP id go10csp29345pxb; Tue, 2 Feb 2021 21:41:54 -0800 (PST) X-Google-Smtp-Source: ABdhPJyIQAibjjx+jAw6uTXOn9rA750Z9ZFhe+a8m4LijD3VLT0XY15R/K6zgekQzzJjD8FBl9vM X-Received: by 2002:a17:907:f81:: with SMTP id kb1mr1507221ejc.466.1612330913914; Tue, 02 Feb 2021 21:41:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1612330913; cv=none; d=google.com; s=arc-20160816; b=TQP98oVGpBPIh/iORhJjfmSCFkpq+INsjWAZvePRQ0qz9qLgVVs5DZx2tDyPKEfVJH /moETX65p9Cj9+6WAarXFY+5eU/2qo6Ld4LRVKIkIS7c4FWNd19QO1Rjt5Q/brLKJrn0 mnRIxcGoiG6tmKFVF+gvIqzrOF2KqAbKdF4GtHebO/Jf0RyV1FJ68kpZcn/54AkLvhll 85D8h/KSpvJqWyqzSwBubmzNrZ5MxAex+yAs48zjk5WnGzajakRFh6YI+ZzdNXAjWhrd vfX/npwjJKjK8gzvh0iANU3wex28kadO4GHZBMdOh1r8P0O55k6sfzuZHclEAxhMK/mE SHZg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version; bh=gR6tvIdl2AVii1tWTxnGTmzq32La5odgjeYLRyiNXrE=; b=fA96u/+nZ54jhYqnXaCahDOJfB09Nn39k2fVOV8F3JH+iHoFKSG2pAY/TJe8VPlO2d Fj1hy6F9p30VVs8Y6Dwz0SM17Jm62rL6QAFiEqB+XTMJ0N9hv9Cl17nixAVwQPRVdwFR iER4yNgYJemSufKk2JGORR+3QPtjQAXD8qqX+B8rkGglZQUQDyM7IGe5vkRIFA5RPuUN +HoZjVY7oJuoupSd3CmJIt7ky34xcGOcUwGyB5+tSqyKtoR/C3A1+lltmRDQv5+AUsr4 XCls6y9iPJ65T4cJsA/lCZASmzyFIHIko5TeZSZboEOlgWt+rW6RwdM9n13L1fhE3Uo1 bGGw== ARC-Authentication-Results: i=1; mx.google.com; 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=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id bs1si658394edb.443.2021.02.02.21.41.29; Tue, 02 Feb 2021 21:41:53 -0800 (PST) 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; 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=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229568AbhBCFja (ORCPT + 99 others); Wed, 3 Feb 2021 00:39:30 -0500 Received: from mail-lj1-f173.google.com ([209.85.208.173]:39602 "EHLO mail-lj1-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229502AbhBCFj2 (ORCPT ); Wed, 3 Feb 2021 00:39:28 -0500 Received: by mail-lj1-f173.google.com with SMTP id u4so25383924ljh.6 for ; Tue, 02 Feb 2021 21:39:12 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=gR6tvIdl2AVii1tWTxnGTmzq32La5odgjeYLRyiNXrE=; b=BPJo7eirZxTJVD6PcVcI7k/tllU85DIeu/A5x9NU4JNhtlnXCHQx17NEfVo2zZLzla FnfHuxSeL+ZJB8g5UsAK69+01TNRkQ1G0VmCVI3TXTsTNorJlEZ+93rSFkLgqoOkA/O3 eWAGvfqv6VwUaLUaZJfX7UggoTlto5bqm5uFekH3WHI9ytElDMEwAUUpogihIbA3RsYx mD9jQv4osZxQvVFStDsNmI/g7e6a3qIQ2lyN1gAhAnO3SGJ9M9/AF9YoGmu0/HGEL9L2 OhoHHKeyKSOoVdA+enyPgf3faBqD4/UyzKEiJO8EoDR/lQisYSxocsMgYHngTuZ9xqZy W90Q== X-Gm-Message-State: AOAM533UKS5nMhZMWzTlEMvf0wSVx8GvvJ5ZoKPgx9ONr6ifNC2OyGMA aL4jUjmg0rdLq/3dxkPpkm1IMAvqpMR9/Y8y3UVM77Bj X-Received: by 2002:a2e:b0f3:: with SMTP id h19mr731227ljl.233.1612330726316; Tue, 02 Feb 2021 21:38:46 -0800 (PST) MIME-Version: 1.0 References: <20201112103125.GV2628@hirez.programming.kicks-ass.net> In-Reply-To: From: Namhyung Kim Date: Wed, 3 Feb 2021 14:38:34 +0900 Message-ID: Subject: Re: Process-wide watchpoints To: Dmitry Vyukov Cc: Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Will Deacon , LKML , Matt Morehouse Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello, On Sun, Jan 31, 2021 at 7:28 PM Dmitry Vyukov wrote: > Not directly related to the above question, but related to my use case. > Could we extend bpf_perf_event_data with some more data re breakpoint events? > > struct bpf_perf_event_data { > bpf_user_pt_regs_t regs; > __u64 sample_period; > __u64 addr; > }; > > Ideally, I would like to have an actual access address, size and > read/write type (may not match bp addr/size). Is that info easily > available at the point of bpf hook call? > Or, if that's not available at least breakpoint bp_type/bp_size. > > Is it correct that we can materialize in bpf_perf_event_data anything > that's available in bpf_perf_event_data_kern (if it makes sense in the > public interface of course)? > > struct bpf_perf_event_data_kern { > bpf_user_pt_regs_t *regs; > struct perf_sample_data *data; > struct perf_event *event; > }; > > Unfortunately I don't see perf_event_attr.bp_type/bp_size > stored/accessible anywhere in bpf_perf_event_data_kern. What would be > the right way to expose them in bpf_perf_event_data? I think you can access it via event->attr.bp_type/size in the struct bpf_perf_event_data_kern. Thanks, Namhyung