Received: by 2002:a05:6902:102b:0:0:0:0 with SMTP id x11csp852244ybt; Wed, 17 Jun 2020 16:00:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyqNEzuNH6Eyrq3EDV6LWZBsFS+waM9BUGzen6Z3GBAKX19AvZcCDvNvJNKoyDS9KYzmspr X-Received: by 2002:aa7:c790:: with SMTP id n16mr1465415eds.54.1592434816960; Wed, 17 Jun 2020 16:00:16 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1592434816; cv=none; d=google.com; s=arc-20160816; b=iSztG6IRVqnzeGjnmS/9WcbFEEYypWvQEyj822BiJmsgR8lQpK4o5YlZzfou/IxsqJ g7MSwVtngtJAbLespFn96vkPRJr1eD2ZJjSvTqGRljawMotA2q30aAwN3ZK42ONFbOEB qeQeU7SuvUHKnyKK+5x4O59JDbmxe3vMVtzhQYekMDtzODSp3hDYRFkqu38Zp57ymWo3 vdUdCCM0f7/r5s5ztksHphA9iBDmESMBLEom8c3bZfpZwRsGdEVuGWW6NIhfB7nG6N5r u5vRR1Ddoa8xE+GbMWZHguITAbN9EgmQ0SSs8jaDuB8eoqn35/z/BMP+Ng4aKrBwRh6g Qtfw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=BG8boI9i4hvxy73OVw5syqVlITws7pDbDreExM7+Kyo=; b=PhmDaHFU0ybm3oJgcL1Vmo8lzg2FJwFxhLG6pM7NDk9pXaHyL+rxD3Jvmn46uTJgLy JsZ/KIfUAkJcbzRCXYNqZSU3ZDA1lk7gTF7mR/+9iZnj32vrH3ptQdro7bBBeq9MG6K1 EQl4ZyiOjE295S6Mc9cKWzET+Ok5si3NqIhR+3CUQWI6Yyp8//ZLLFNZxhbbu0iPBcQL Lzq/Ukqzy4WzNiLeYVeJM20hLzoqTzdqw56SyHU1Qljhqb9D9vM8Rawt+jCls/oXqStG R6L5nlBYNqYQ0vhpuE5pomvl3QOxUpVqzvlIWRaA4p1lS8oMFed5geX6iLTZJbqvHu2O fG8g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=ZKgCZEiH; 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 dc10si754903ejb.190.2020.06.17.15.59.54; Wed, 17 Jun 2020 16:00:16 -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=ZKgCZEiH; 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 S1726867AbgFQW6M (ORCPT + 99 others); Wed, 17 Jun 2020 18:58:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53320 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726763AbgFQW6M (ORCPT ); Wed, 17 Jun 2020 18:58:12 -0400 Received: from mail-vs1-xe44.google.com (mail-vs1-xe44.google.com [IPv6:2607:f8b0:4864:20::e44]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1AB21C06174E; Wed, 17 Jun 2020 15:58:12 -0700 (PDT) Received: by mail-vs1-xe44.google.com with SMTP id 190so2402456vsr.9; Wed, 17 Jun 2020 15:58:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=BG8boI9i4hvxy73OVw5syqVlITws7pDbDreExM7+Kyo=; b=ZKgCZEiHMPZlSK79v7B/RMDzy040q5vp1nhxswINjnkURubO6rXmOwwemoApYwNZaK EsPjIxaS1G4sh/02VtRKbMjPNMsqgcw1+An/4Z+1uXqBAUUMngu08xFDx0sfygVM01l1 VcDM9N9GJPiH/v5WRXOg9vXZuLg5mnU43Es+LZhzbUjDg51T36H9eSfSj8JqmZeWSU2N VD//N4VedeVYvtuzoAJsHv8a5K9mRXZ1tCrzzrCz1Bxib5rQXS0nhgtsNmol+NJDXe87 3G+bC5FD6szi4kWfpSdMvV+W3cfUYVRLhW/5ULXvTeXgzKA6HD+5tmlI2ch7VQDYYRMy sW3w== 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=BG8boI9i4hvxy73OVw5syqVlITws7pDbDreExM7+Kyo=; b=IUDHtLZgSeW5MaL459VKysrEt47j6uj5NpguMSuOhkikvKWgBgAobF8+33PPPttLsY 174XjoPl7mUa/FKQsZrblM98paZpJEr3+WsUpISL4jiYKmOakfsN/9wm8xV4OHLBbdoG Tt/kqbbiT76ZD9FyzmavGlPgDYVeb4ltw434cZlbGgiEWP7JIZqyfOTx3Jt6NLWhprXm cSdU4BScGEH7TOsqtgyVB5MrnsPdDKn4PnVzXAaGSnTpGLEnap5lKWiTngs2OslJU9SL I1qDVqq5S3tJbqootmeRVWEVm2TB3bsVcFTQ/r3Jh+SK8VU4LI3eJmHloJQ34d/JyIf5 4KTg== X-Gm-Message-State: AOAM532C4VWddImH9xOC1QAqi/+0wIWwdJMGGv9MDwdUi9Pn12/oBSkA dDu8qYqgUEzZUwBX16oeeNNVPry2ilcwXNYXETvqRwNy X-Received: by 2002:a67:fc17:: with SMTP id o23mr1342081vsq.92.1592434691199; Wed, 17 Jun 2020 15:58:11 -0700 (PDT) MIME-Version: 1.0 References: <20200617162536.611386-1-jim.cromie@gmail.com> <20200617162536.611386-23-jim.cromie@gmail.com> In-Reply-To: From: jim.cromie@gmail.com Date: Wed, 17 Jun 2020 16:57:45 -0600 Message-ID: Subject: Re: [PATCH v3 20/21] dyndbg: add user-flag, negating-flags, and filtering on flags To: Joe Perches Cc: Jason Baron , LKML , akpm@linuxfoundation.org, Greg KH , Rasmus Villemoes , Jonathan Corbet , Andrew Morton , Will Deacon , Orson Zhai , Petr Mladek , Linux Documentation List Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Jun 17, 2020 at 4:13 PM Joe Perches wrote: > > On Wed, 2020-06-17 at 10:25 -0600, Jim Cromie wrote: > > 1. Add a user-flag [u] which works like the [pfmlt] flags, but has no > > effect on callsite behavior; it allows incremental marking of > > arbitrary sets of callsites. > > > > 2. Add [PFMLTU] flags, which negate their counterparts; P===!p etc. > > And in ddebug_read_flags(): > > current code does: [pfmltu_] -> flags > > copy it to: [PFMLTU_] -> mask > > > > also disallow both of a pair: ie no 'pP', no true & false. > > > > 3. Add filtering ops into ddebug_change(), right after all the > > callsite-property selections are complete. These filter on the > > callsite's current flagstate before applying modflags. > > > > Why ? > > > > The u-flag & filter flags > > > > The 'u' flag lets the user assemble an arbitary set of callsites. > > Then using filter flags, user can activate the 'u' callsite set. > > > > #> echo 'file foo.c +u; file bar.c +u' > control # and repeat > > #> echo 'u+p' > control > > > > Of course, you can continue to just activate your set without ever > > marking it 1st, but you could trivially add the markup as you go, then > > be able to use it as a constraint later, to undo or modify your set. > > Does this set selection also allow for selection by > increasing decimal level? > > Can sites be enabled for a value less than x? > > no, theres no levels added here. that would be a variation on the WIP pr-class patch in v2, dropped from v3 legacy dyndbg - select on RO callsite info only - file, module, func, line. flag state is write only. filterflags - additionally select on callsite's flagstate, ie reading the current flagstate please look at the export patch 15/21 for how I now think levels, and drm.debug=0x03 can be done.