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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2BC42C021AD for ; Thu, 20 Feb 2025 04:19:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 62A754401C8; Wed, 19 Feb 2025 23:19:59 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 5DA2D4401AE; Wed, 19 Feb 2025 23:19:59 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4A1964401C8; Wed, 19 Feb 2025 23:19:59 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 2DEC24401AE for ; Wed, 19 Feb 2025 23:19:59 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 06DE5B2606 for ; Thu, 20 Feb 2025 04:19:58 +0000 (UTC) X-FDA: 83139020076.11.6813FEF Received: from mail-pj1-f52.google.com (mail-pj1-f52.google.com [209.85.216.52]) by imf19.hostedemail.com (Postfix) with ESMTP id 1D0481A0002 for ; Thu, 20 Feb 2025 04:19:55 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=erif4xQz; spf=pass (imf19.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.216.52 as permitted sender) smtp.mailfrom=senozhatsky@chromium.org; dmarc=pass (policy=none) header.from=chromium.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740025196; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=1guhW82eeWquTt2CEyxnqbnegZGM8zsatvuN9vRWU6U=; b=KmE+sE7y19n3siRhToAbcXDB9ZQu3oKOwIKfK5eqRKtpq8OMlxrRv+SQPTMU9Y5kyfWzy5 hOFPMJUeZ1ocdFu5TsgpHQXA9/ETsvshU5F2sFI1/tKQAr7SHBzBV37NNIFNNdDpYfC3so qM0pcNpEFJ+VE7bFH6TQLd8obsiYEOc= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740025196; a=rsa-sha256; cv=none; b=75jXpNjDBluB/ctYHlVvdmaPSZ65poRRlPPmVBLSkzR5NzuNQCF9bIu2xwsQX9QWbVnRm0 0HaoMKPLb/U+fkH4JQ9zndHfsvVjA2pdcSddnT2oRctLKi5pRTah9pqzl24rQDubSan2Gv 1zp0sOwmckxVorLrUE6vOQ/Kd9boMfU= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=chromium.org header.s=google header.b=erif4xQz; spf=pass (imf19.hostedemail.com: domain of senozhatsky@chromium.org designates 209.85.216.52 as permitted sender) smtp.mailfrom=senozhatsky@chromium.org; dmarc=pass (policy=none) header.from=chromium.org Received: by mail-pj1-f52.google.com with SMTP id 98e67ed59e1d1-2fc4418c0b9so774498a91.0 for ; Wed, 19 Feb 2025 20:19:55 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=chromium.org; s=google; t=1740025195; x=1740629995; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=1guhW82eeWquTt2CEyxnqbnegZGM8zsatvuN9vRWU6U=; b=erif4xQzODEl3zoREbMxfEnKHHV3DMCUyHAKfDvANBdx3L+WKvhFQMIrh1tU1ecLL1 MzEoNmgMw4tbgf7mjVl46hGYqUTwSpaIrcO2gw01AzTtQjbQMHDRxo3AGuWcVDPkF35q CQwQFLC3Ifgt6o2ymkMGD01+JEQ9BBKKscVv4= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740025195; x=1740629995; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=1guhW82eeWquTt2CEyxnqbnegZGM8zsatvuN9vRWU6U=; b=UD9FN7FI3QiGKD8q2i8FByT9iT76MrykbCfqzoR7fIy/rtvEPtBUAi0XW2y264g7bp xtHXOwYUTNGkZJ20B3KjtPcSoFm6ig9ndU6LU7kDIoZXdFS6X1rkak3RzCPtXx4Z1kf0 iL3uUH/CBjj+xd38ZlsgIv1peBydssPREGbV8vm2Kz9ClU1k7UHtNBGSQ/SwVHxamot+ ORZVwLVscU/e32iEKM3PB3K4LtDXh+bRH786McniLLJZBLDa2L9/6gRH6lAp9LFNgoR2 BbNcLbyRIQwAha9zDMRK2zN0KUR3v1zzrVlQ7OVJ8EUzwzj8UGoHNNymc0CURg+vjc0y apqA== X-Forwarded-Encrypted: i=1; AJvYcCUg/grBsSwg5mftrv6t9wyHzu2Hmec7R+515LzD+PF0sNwCQsDJKR5BHGq6YDjwTFg+cXI5IoCSHA==@kvack.org X-Gm-Message-State: AOJu0YwePauxCB0w1U3Pu822Zv2GSA/ELlsatji9WYDJ/t2nAebzeXsz tdR6kBlLQp3gz7pFFHhwHH3O3+nfUV45FzhyBJO2EFtH2c8EliX19hYYS4/kvg== X-Gm-Gg: ASbGncv51GO4Sx2VHA4HHTO3svlzlfekf7S65YN5GUfBWsdO4hz9v0F/Exc4T6b20ee +HJreQZNwIlro6yNSFH1xf9m8woQk1FXltW9+2Wi5Id/Ol+cl9oSBdyUzOkjrFDRILmmzbFCG7+ cOpShFOocAYDOfp8CZpflmaRtFhBZraTOk9r6xyZMhbNL+MSVlq3kR0EnZCK1KQ4kC4bHRVXUGK XQe4QAqatnLZ2dpmpteGFUy89uYouB4fjZQ29gJdYzRz7ybWtIain4M25n1nRqpLd/bWDCucviG hYckjXK6T4rubLcoYxc= X-Google-Smtp-Source: AGHT+IEltPMfgtQhVZ0dQG0v1P099D7vde3veq/4xhclX8N/PJrWK6HsbG46xV8T8CL676zNThnv6A== X-Received: by 2002:a17:90b:3ec3:b0:2ea:3f34:f18f with SMTP id 98e67ed59e1d1-2fcb5a39326mr9355970a91.19.1740025194915; Wed, 19 Feb 2025 20:19:54 -0800 (PST) Received: from google.com ([2401:fa00:8f:203:9c92:f424:750b:8e42]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-2fc13ab0fe7sm12801138a91.10.2025.02.19.20.19.50 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Feb 2025 20:19:54 -0800 (PST) Date: Thu, 20 Feb 2025 13:19:46 +0900 From: Sergey Senozhatsky To: Waiman Long Cc: Sergey Senozhatsky , Masami Hiramatsu , Steven Rostedt , Peter Zijlstra , Ingo Molnar , Will Deacon , Andrew Morton , Boqun Feng , Joel Granados , Anna Schumaker , Lance Yang , Kent Overstreet , Yongliang Gao , Tomasz Figa , linux-kernel@vger.kernel.org, Linux Memory Management List Subject: Re: [PATCH 1/2] hung_task: Show the blocker task if the task is hung on mutex Message-ID: <20250220-112040-neomutt-senozhatsky@chromium.org> References: <173997003868.2137198.9462617208992136056.stgit@mhiramat.tok.corp.google.com> <173997004932.2137198.7959507113210521328.stgit@mhiramat.tok.corp.google.com> <20250219112308.5d905680@gandalf.local.home> <0fa9dd8e-2d83-487e-bfb1-1f5d20cd9fe6@redhat.com> <20250219152435.35077ac3@gandalf.local.home> <20250220080908.fc1494f0f7c611b48fbe0f8b@kernel.org> <20250220-112040-neomutt-senozhatsky@chromium.org> <524bd2b9-5322-4012-b1d0-b76edb84ec4f@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <524bd2b9-5322-4012-b1d0-b76edb84ec4f@redhat.com> X-Rspam-User: X-Rspamd-Queue-Id: 1D0481A0002 X-Rspamd-Server: rspam07 X-Stat-Signature: nnga9w38a811ejew9gh15wxxy1jx76y5 X-HE-Tag: 1740025195-947602 X-HE-Meta: U2FsdGVkX18xyHwOQRY2MAWECRraxujZpxleRARhxuNyHLCWtlbiH1BBW9COWe9GwhhjjCcVStA7tG872iaRuFz+tETFk08zA152gEtTEHoE2fHRQTDl+O56X0SFBNdUFa47iA6/jVvZ40kDXpDB1EjWh/JNAGeH9wQLHCkHsCtd03jqe0e7IldhHCQAvsXO7dg4RHtz8vqoGSwjAYhnZFsScKNlt9jtcGHfie1cs48wxdGmzQKbtNKrjGPpY6rrfX4snDRfQwEuI6e2pelhthfDz1VLyKVcTQxF4RgrKKhC3SA6LptTkK/P6zpReLKcWb/36/vsr96WM1B+PNj18nwtjq+yOOTLrWLG34BVt7REBSDMkMQyVAFDpOSJYjYT1i48X5dm+272XCkKr9tjGVl/pqmxP5DTTfBWZNZrWFtDMeCaoM+n/bdC0XiA5+jd9tuLp/Z0PeFH9x0Kfq9Uu+YOtvizOwsxrSl2qm6p5Iow5mA215R3cinpf5ZSfQE6EEDAaYTMecs9Xy1/8OI9dccjE+U2lYxiCyukiHqIY/h/SYih+njb04sGTkrCVu93az9r/YOtJ84wn+PE7Nif4kyV2bh8VNbhuH56gRjaWGntrKKc3EM8jmYmo1ZVXkc3stlJm5WX9z6aULV1w1ebl5feTu966uBAvMG2lmR/CMhNWWQ0Ts4qLYJvOvG83usaQ9T+Ofw4kQ7WdDzyuzVwLpOinnT0nZytDZxyyyND9e866N36XX1cAgeD6W6qNobU6ag4sgFK7miguwLRNk3YHGJLD/u++AoG71RjTlQTu7/AE6R6eNXMOqmVmqc9Ik6tjzSaiuZdYEEMjtRmycXGfp/t8F7ji0kITGQHTs8G7UnwTcKuqtls7Fb+Cu4Bu73T2Rt2Y8K+2ER6WwwCIgOKMQICj18kbdQzd4pmTPXDrGOLphxSwvrT3dUMKGD4G2li1S/YC+MO5r8eGY/PpM4 RhH+fY3e cfk/oKS2oMbe4b7yYm8fgjV6I1O5Ke22J95sOAE7nNITrfvmmDQaeXiL2h7CoY2Agbkbhi7z/SDsIN/qJkYC3QHL08YUrWpLxjneOWw9BwShRBVQP/g8xpb1nq6IiEbPqPaeVCulc8jFtkHRgHJ4vJrmf806Vy/fuwR3cbeyyGtX05v8NgzpUeDDPmbCiRQtw4DGrbSx9fjR5TjAdB64s+UZpuciekILiGfNIFZFvbBMQuSPj0Hi6EUJFc4P584EOvxUU8eR+TM8WKzpBKBfFoitkOrnntFu99cGd7w0fImulfvfnmUqlgv9SehyrSqUypcA4aXfmO1lXz8IUnegf8aEjst0wtGAl1vgs7YeAQ8qUdQ2l5KSuuXeDDhV6+RfQy6L5zQjbv5QTw6rvmG9Mp+7w18LnUeTKoucohxAHFU1fFMnZd6UJ1m4qGJ0/iC1XkCmg4uM/5Cbf9pm6EiGM2lebJze4DlnTkZjv X-Bogosity: Ham, tests=bogofilter, spamicity=0.019133, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: Message-ID: <20250220041946.sLgqdDihgdl7LYLva1EMxiCnmagAjreicDB6jb6aAYk@z> On (25/02/19 22:49), Waiman Long wrote: > On 2/19/25 9:45 PM, Sergey Senozhatsky wrote: > > On (25/02/20 08:09), Masami Hiramatsu wrote: > > > So something like this? > > > > > > unsigned int block_flags; > > > union { > > > struct mutex *mutex; > > > struct rwsem +rwsem; > > > struct rtmutex *rtmutex; > > > } blocked_on; > > > > > > enum { > > > BLOCKED_ON_MUTEX; > > > BLOCKED_ON_RWSEM; > > > BLOCKED_ON_RTMUTEX; > > > BLOCKED_ON_IO; > > > } block_reason; > > I totally like this and always wanted to have something simlar, > > something for all "sleepable" synchronization primitives, lightweight > > enough (memory and CPU usage wise) to run on consumer devices. I was > > thinking of a rhashtable where each entry represents "sleepable" > > primitive with a "owner" pointer and a list of "blocked on" tasks. > > But I'm sure you'll have a better idea. > > > > If I may add a couple of "wishes", can we also add: > > - completions (so that things like wait_for_completion and > > synchronize srcu get covered) > > - wait on bit (so that things like lock_buffer and so on get covered) > > Bit lock doesn't have a owner field to track the owning task. Right, so that's why I was thinking about keeping it outside in a hashtable. A list of owners plus a list of blocked_on per "lock", be it a rwsem, or a mutex, or a bit.