From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1F0ABC433F5 for ; Mon, 14 Mar 2022 21:44:23 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S245358AbiCNVpc (ORCPT ); Mon, 14 Mar 2022 17:45:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37918 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237993AbiCNVp2 (ORCPT ); Mon, 14 Mar 2022 17:45:28 -0400 Received: from mail-lf1-f50.google.com (mail-lf1-f50.google.com [209.85.167.50]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EA256193ED; Mon, 14 Mar 2022 14:44:17 -0700 (PDT) Received: by mail-lf1-f50.google.com with SMTP id g17so29643280lfh.2; Mon, 14 Mar 2022 14:44:17 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=2VfnhbEGoaJMBxbZk/tXhcsK9P2W1Pv5LMv/tBwaIfo=; b=gqFwpR5aJyOGQqvePQE5NWYaKTi370jQjW/2L/ts1xGaTpQ4QfjMv+JqadXeoG2FTw mjp1/0l276dQdWj/+SRBx3x0JzTYWYjo8c4L+LrpDDADSeG3+OtxwjaDk2t9gMNeZEho +wKDwLsEcpCd2B83UZCr4tVfMAmfnMZT/GDyZvP2Bimk8rK7XtyH/p80yBFLOhITHEzx x1fpZ3uqS8IDwy8jtaY3fLCbmByDlTjfOBCKcupRPfVllV2Gx3WH9lEAnjjodGsQvPfj 5g9YiexxqUSOXfGWlFWHBJ+yIZsbsOM257QOpd+c1lGPNgAVdIkoPxhU4MAzVMJe8L7d thjg== X-Gm-Message-State: AOAM533ZKh0AX2An3UQlx45daYnlDk8VY/k5RknXre2Ug1mNCEN89VtA EDEihZWJWhLfhFNclONFHrOxQaGAEI7/AGcVg8Q= X-Google-Smtp-Source: ABdhPJwxEXoBr4ZBfHBu6jBT617TwgtgRa+XqjNS61tSGsjG05PbvU4akXVAa/APfYJL6iDAN9GZoTYHduL2i9Q84ZU= X-Received: by 2002:a19:6b0d:0:b0:448:53c6:702b with SMTP id d13-20020a196b0d000000b0044853c6702bmr14479332lfa.528.1647294256086; Mon, 14 Mar 2022 14:44:16 -0700 (PDT) MIME-Version: 1.0 References: <20220301010412.431299-1-namhyung@kernel.org> <20220301010412.431299-3-namhyung@kernel.org> In-Reply-To: From: Namhyung Kim Date: Mon, 14 Mar 2022 14:44:04 -0700 Message-ID: Subject: Re: [PATCH 2/4] locking: Apply contention tracepoints in the slow path To: Peter Zijlstra Cc: Ingo Molnar , Will Deacon , Waiman Long , Boqun Feng , LKML , Thomas Gleixner , Steven Rostedt , Mathieu Desnoyers , Byungchul Park , "Paul E. McKenney" , Arnd Bergmann , linux-arch@vger.kernel.org, bpf , Radoslaw Burny Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 1, 2022 at 1:04 AM Peter Zijlstra wrote: > > On Mon, Feb 28, 2022 at 05:04:10PM -0800, Namhyung Kim wrote: > > @@ -1718,9 +1726,11 @@ static __always_inline void __sched rtlock_slowlock(struct rt_mutex_base *lock) > > { > > unsigned long flags; > > > > + trace_contention_begin(lock, _RET_IP_, LCB_F_RT | TASK_RTLOCK_WAIT); > > raw_spin_lock_irqsave(&lock->wait_lock, flags); > > rtlock_slowlock_locked(lock); > > raw_spin_unlock_irqrestore(&lock->wait_lock, flags); > > + trace_contention_end(lock); > > } > > Same, if you do it one level in, you can have the tracepoint itself look > at current->__state. So I tried this by reading the state in the trace like below: + TP_fast_assign( + __entry->lock_addr = lock; + __entry->flags = flags | get_current_state(); + ), But I sometimes see unrelated values which contain __TASK_TRACED or __TASK_STOPPED and some unexpected values like TASK_UNINTERRUPTIBLE for rwlocks. Maybe I missed something. Anyway I think it's confusing and complicates things unnecessarily. Probably it'd better using new flags like LCB_F_SPIN and LCB_F_WAIT. Thanks, Namhyung