Received: by 2002:a05:6358:4e97:b0:b3:742d:4702 with SMTP id ce23csp3747873rwb; Tue, 16 Aug 2022 08:10:18 -0700 (PDT) X-Google-Smtp-Source: AA6agR7ABC4j96UqLzgSURs6slNaIYkpmef23XJAskriwemcv3qZbFmCDbtqLvgoGAeQ6xaNPD7y X-Received: by 2002:a17:907:2d2b:b0:731:2179:5ba with SMTP id gs43-20020a1709072d2b00b00731217905bamr14420263ejc.207.1660662618534; Tue, 16 Aug 2022 08:10:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1660662618; cv=none; d=google.com; s=arc-20160816; b=wHjPGoUMTKeQZEgMJvA8oYDGgpvmtunaHc37ndaBhGd70k69DLFMrVyu+sb2EBLpfH ANa6YyFIEPLASqx6snzkWjj9TZFUrYNJ1U3thj6FPYT75+VMZO9cVpWisUOrT8SrMOqn pPkAXDHBu1cY5xT6bbnjmGKtBcmDm5hMKm9QabJWyFSf6Nbo1Ex3uPbU2eMKYErycYjZ ch2JN3B5D8THxUbBIhRXC0UhWadIsFTnGu5zzeK28YbASRi/s8xPFfjpo/7np6OlD4L2 cDPJRVlTEDZ+rA2FN8QJ51h6/u2tlzGizjj71r369TZmvl3nWcV8+FXL7MLySkoKVsHF SQ3Q== 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:dkim-signature; bh=Vyh7nX6aNSNUE119qdiIIT/EoXittiyqJ3KmpoRb3JU=; b=A+OeKuwZnCAvqp6RiqACAtlw93gh0RLrscMXBMCiElzuUci6ylE5SGnJS5yAzvsbyV w1P4iA00cMnquJOR6h3o1opi4NtSFurzmzh9wQQB8zu4IB2h8T0Z0j36sfReV7pMQnPT tO6tapbuCUZjf3OoiVoKkl7u5BG1dVzIobTrH4bm7/WVZK1rVWleqCB0p4gaI5U4ZxbT IJoI/D3A46Ygmpa4m9CHXNhCQiOGKL9kDEw/2Y6X5nf2VNf0n2stvQO8LFhWLheJ/6Rc FS5uc2h6vxI26YEpzXhXQBoyBvyXa1GgDRaqgEt8iuvctFQNDlWATcEz9WUcfYxIO1Dr EQgw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=fDj6Fopp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y4-20020a056402358400b0043d3a571d3fsi11687340edc.445.2022.08.16.08.09.49; Tue, 16 Aug 2022 08:10:18 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=fDj6Fopp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235683AbiHPOMu (ORCPT + 99 others); Tue, 16 Aug 2022 10:12:50 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60382 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229477AbiHPOMs (ORCPT ); Tue, 16 Aug 2022 10:12:48 -0400 Received: from mail-yw1-x1130.google.com (mail-yw1-x1130.google.com [IPv6:2607:f8b0:4864:20::1130]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A8FDB32D8E for ; Tue, 16 Aug 2022 07:12:47 -0700 (PDT) Received: by mail-yw1-x1130.google.com with SMTP id 00721157ae682-32194238c77so154465417b3.4 for ; Tue, 16 Aug 2022 07:12:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc; bh=Vyh7nX6aNSNUE119qdiIIT/EoXittiyqJ3KmpoRb3JU=; b=fDj6FoppCemEAwso3o7LaD74WUC1I9oEzmYzOiTRD1OOS+4Bh/MPtP7m5uo8mLYe8C zjiVBUaPQ3d7zM+BHkTObTgsVSBd9aM9wKIW8UUHuYI2CXJkxy+j0lvwAbiMhmbKWwl4 a16VohoYwhqmH4juBAj0nl6EkhgDKPGuuylgPjsCBy90RROWdi4K+AERKW55Swmsat7e gnR7lOcShMaxofH2EhqaBVQcfGs2vhqk4kVv+35th/mz8bcupB5rEqa7i56L72oV8VbK VzJx+/RwAFTqDU3LqTCDymIJPC5R6KkqcOySUiJTzF/kKwXNS+QpJMPFKemJ/d79x23F eiQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc; bh=Vyh7nX6aNSNUE119qdiIIT/EoXittiyqJ3KmpoRb3JU=; b=drhHle7o71Q65dLj9iDbqjkb6hvHu8XVXgJyOh8KDAkf5Sqp5idD5M7Si08Oei5nPc FsNcts6gS6ZQ8xH6GcsAQv/LEy6gScqSB/pWlEghGAH/7ykZDWwv2+iVT9s3mlP1baI7 hRp7y+sNgQCNdVpsbUcss8ivmKLh4+j7Qjoh/aJVhTZmsyLCiTApGfPzUkoaOPHzf12H W642emZRDy9oMf1nvIt5YQ31lzCOyqd8Lm7C/D3auNO8o+chx5EP+qgZpl+8IaLi5zPA K1ScEldW0WNiwcZoRRwcwtX9/N3qniWZPi7Dy6UnA6Oqt6WvFyq8QOVFMh/QeB6NCo6Q zLIA== X-Gm-Message-State: ACgBeo0VuO3VMKenBIIEn9vR01QXmL9Z9SnbvLQ2hxjvA+/Oxo0INdZ2 zv9l3MZoBeuSp8W/RTH1vy5qQHVc/lOYgFTtfBLEew== X-Received: by 2002:a25:490:0:b0:67c:22be:65db with SMTP id 138-20020a250490000000b0067c22be65dbmr15094214ybe.16.1660659166737; Tue, 16 Aug 2022 07:12:46 -0700 (PDT) MIME-Version: 1.0 References: <20220704150514.48816-1-elver@google.com> In-Reply-To: From: Marco Elver Date: Tue, 16 Aug 2022 16:12:10 +0200 Message-ID: Subject: Re: [PATCH v3 00/14] perf/hw_breakpoint: Optimize for thousands of tasks To: Peter Zijlstra Cc: Ian Rogers , Frederic Weisbecker , Ingo Molnar , Thomas Gleixner , Arnaldo Carvalho de Melo , Mark Rutland , Alexander Shishkin , Jiri Olsa , Namhyung Kim , Dmitry Vyukov , Michael Ellerman , linuxppc-dev@lists.ozlabs.org, linux-perf-users@vger.kernel.org, x86@kernel.org, linux-sh@vger.kernel.org, kasan-dev@googlegroups.com, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-17.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, ENV_AND_HDR_SPF_MATCH,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE,USER_IN_DEF_DKIM_WL,USER_IN_DEF_SPF_WL autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 20 Jul 2022 at 17:47, Ian Rogers wrote: > On Tue, Jul 12, 2022 at 6:41 AM Marco Elver wrote: > > On Mon, 4 Jul 2022 at 17:05, Marco Elver wrote: > > > The hw_breakpoint subsystem's code has seen little change in over 10 > > > years. In that time, systems with >100s of CPUs have become common, > > > along with improvements to the perf subsystem: using breakpoints on > > > thousands of concurrent tasks should be a supported usecase. > > [...] > > > Marco Elver (14): > > > perf/hw_breakpoint: Add KUnit test for constraints accounting > > > perf/hw_breakpoint: Provide hw_breakpoint_is_used() and use in test > > > perf/hw_breakpoint: Clean up headers > > > perf/hw_breakpoint: Optimize list of per-task breakpoints > > > perf/hw_breakpoint: Mark data __ro_after_init > > > perf/hw_breakpoint: Optimize constant number of breakpoint slots > > > perf/hw_breakpoint: Make hw_breakpoint_weight() inlinable > > > perf/hw_breakpoint: Remove useless code related to flexible > > > breakpoints > > > powerpc/hw_breakpoint: Avoid relying on caller synchronization > > > locking/percpu-rwsem: Add percpu_is_write_locked() and > > > percpu_is_read_locked() > > > perf/hw_breakpoint: Reduce contention with large number of tasks > > > perf/hw_breakpoint: Introduce bp_slots_histogram > > > perf/hw_breakpoint: Optimize max_bp_pinned_slots() for CPU-independent > > > task targets > > > perf/hw_breakpoint: Optimize toggle_bp_slot() for CPU-independent task > > > targets > > [...] > > > > This is ready from our side, and given the silence, assume it's ready > > to pick up and/or have a maintainer take a look. Since this is mostly > > kernel/events, would -tip/perf/core be appropriate? > > These are awesome improvements, I've added my acked-by to every > change. I hope we can pull these changes, as you say, into tip.git > perf/core and get them into 5.20. These still apply cleanly to 6.0-rc1 and the test passes, but let me know if I shall send a rebased version. Thanks -- Marco