From patchwork Fri Jul 28 16:42:32 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jens Axboe X-Patchwork-Id: 127763 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:918b:0:b0:3e4:2afc:c1 with SMTP id s11csp575892vqg; Fri, 28 Jul 2023 10:09:11 -0700 (PDT) X-Google-Smtp-Source: APBJJlFmzxu2TtuI2njpz5NaTZRKSr57yee10q3+iakADS2QxDdF+qX4aZ2o+i4W7mLKcRPzQLCb X-Received: by 2002:a05:6870:c21f:b0:1bb:d808:da72 with SMTP id z31-20020a056870c21f00b001bbd808da72mr4165268oae.57.1690564151308; Fri, 28 Jul 2023 10:09:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1690564151; cv=none; d=google.com; s=arc-20160816; b=tE4nSJZFGOBVg6e0ZkP/JrHb+h6Zqh2zcbdIoOSlsGrtXFjSpjCwTfRFcGnboWng8U 1kmPUCID4hHZq2+/hU/38CzZzoXLePuvhXf70Bo7RvFKBLwSNHnvLSFTMwLEOuRNbUDK bczAuQZkyz1lJ1yBYWV9WgSa1ZsGU9S5KiiWNfu6ayLeU2eD9STCHkHUaDKPwxT5TJe7 6gFH+EA+5uQZNmb8uJ7E3CJFcDqdj+oO8zYTuzohw1GMfidcs+im20DKv85c3tui+my7 ZDUa5GRwl1gCAE0BI+wKBFSDibdtaKAoR/WWCTkol4ddtfoh+n1dboZTL39Woq/sL/Fi 4kcA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=OXSlh5iMF2cncsBboldJj3SWTlVFipNC9kJryix07S8=; fh=DnWmIIJo3B+rGTNXkDMzawWuDVsJB9JjWDIPE9Mz7eQ=; b=lWujfUA+6OM+570yGxZnb0oYdS1s20Ty62HZat21GPmQrfq1vv+Fwyyg6NmncBNncM Pa6KfycrKo2Z4hbf4EJFZACUubsK+9CJS+479lRQo6o1Ids3RS8eBrZp5oX6cOhrUdE+ 3kvdMCLDBFTRAKqZC6xgf8V9iL8DKDLXGt3OmgdFwwFna1ozA/tdw3OTBzYxIiOA9RET H1Emipo4wpqKOrFT0PWJP327zEaN68IT1M7pC0TVyVHDfNc5SSvYowSlmlJOQVZ8+Hld UTeDD+XWmFMhjK9s/iT45yoAana0l10NZS6ZaLT6+z6oz62H+zYMCtB94ad1Mt6/tE23 tQgg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel-dk.20221208.gappssmtp.com header.s=20221208 header.b=uR1ssBnj; 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 Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w22-20020a63c116000000b0055bdcb7dd5csi3295485pgf.701.2023.07.28.10.08.57; Fri, 28 Jul 2023 10:09:11 -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=@kernel-dk.20221208.gappssmtp.com header.s=20221208 header.b=uR1ssBnj; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234631AbjG1Qnp (ORCPT + 99 others); Fri, 28 Jul 2023 12:43:45 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:45974 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233883AbjG1Qm6 (ORCPT ); Fri, 28 Jul 2023 12:42:58 -0400 Received: from mail-io1-xd2b.google.com (mail-io1-xd2b.google.com [IPv6:2607:f8b0:4864:20::d2b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 73565421F for ; Fri, 28 Jul 2023 09:42:47 -0700 (PDT) Received: by mail-io1-xd2b.google.com with SMTP id ca18e2360f4ac-785d3a53ed6so26249139f.1 for ; Fri, 28 Jul 2023 09:42:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel-dk.20221208.gappssmtp.com; s=20221208; t=1690562567; x=1691167367; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=OXSlh5iMF2cncsBboldJj3SWTlVFipNC9kJryix07S8=; b=uR1ssBnjeuiTE5m+B1bv8/fVJi5l51pnVmG4/EL2HyEO/5GT3XvxP+aKESMKhKlEgX jZie60GP1Zs56RCJUEG7Fl3y6elluyJ1bBWTmu8gm4wxHC3Ht0X2XW8Iq0nSAqg4ZMDx L3jL+mrawF4MCUuHLxar6LxnHgBrJI4J3KXzU1IuiXv0ivgJuxsdxGJHyW/B3uwqOyiz vuWprkljIdUGjE/PFrQjkroizLVTWfApqq5YggJJCfCgmVzjxTs4LtwPy25jqwMknP7a G+1N8neLLNkHLV0jnpbkM3i88h4gcDlyQ8S2i/5tRA2Tk8Z7+F8S56ihdnb5n9oWTYAo 7rYQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1690562567; x=1691167367; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=OXSlh5iMF2cncsBboldJj3SWTlVFipNC9kJryix07S8=; b=OrNeVbgmUKHOtR06ic0bRVPcFdNZMPdzQ3h4DMXhGTke2gCaFHbuyMmCktWUMjVGuZ +YPEaZ3eo0VfVTpN96Douaqw+ZqiQ1tygw0Dsz1r6JWbm+gVOVb954a6I7Y8v1AVIb4R 4uXD9FOGFSdKap+5aZ5Csc/TIIvHE0Ri3NcEFsxmKzJ+aMWrHa8SGxukeQR5ALTzOjTB AyDYf4pgB8kalZNNQ1pY/4GQVaZ80tKQbVIlUQ8Lw4/Az8+faBe98rLOPiilixoJg6IV 3O5r0spLnKjt4voAe9WPOemy0b9U0ASXG6LzAlk6dmHK9bhWvRxKvFJA9CqZtvQbjUS8 jLgg== X-Gm-Message-State: ABy/qLb8a1Wf7QJy8fwi0HdeecmzIT+6PfjOhr7Q2y84cm22RdmKu08B +8WYvrGkeHhbelMT3B+xXsbEMMuB5lizhYA0MJQ= X-Received: by 2002:a05:6602:3d5:b0:780:d65c:d78f with SMTP id g21-20020a05660203d500b00780d65cd78fmr98470iov.2.1690562566663; Fri, 28 Jul 2023 09:42:46 -0700 (PDT) Received: from localhost.localdomain ([96.43.243.2]) by smtp.gmail.com with ESMTPSA id b2-20020a029a02000000b0042b37dda71asm1158808jal.136.2023.07.28.09.42.46 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Jul 2023 09:42:46 -0700 (PDT) From: Jens Axboe To: io-uring@vger.kernel.org, linux-kernel@vger.kernel.org Cc: peterz@infradead.org, andres@anarazel.de, tglx@linutronix.de, Jens Axboe Subject: [PATCH 09/12] futex: add wake_data to struct futex_q Date: Fri, 28 Jul 2023 10:42:32 -0600 Message-Id: <20230728164235.1318118-10-axboe@kernel.dk> X-Mailer: git-send-email 2.40.1 In-Reply-To: <20230728164235.1318118-1-axboe@kernel.dk> References: <20230728164235.1318118-1-axboe@kernel.dk> MIME-Version: 1.0 X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE 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 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1772684995176974817 X-GMAIL-MSGID: 1772684995176974817 With handling multiple futex_q for waitv, we cannot easily go from the futex_q to data related to that request or queue. Add a wake_data argument that belongs to the wake handler assigned. Signed-off-by: Jens Axboe --- kernel/futex/futex.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/kernel/futex/futex.h b/kernel/futex/futex.h index e04c74a34832..4633c99ea4b6 100644 --- a/kernel/futex/futex.h +++ b/kernel/futex/futex.h @@ -146,6 +146,7 @@ typedef void (futex_wake_fn)(struct wake_q_head *wake_q, struct futex_q *q); * @task: the task waiting on the futex * @lock_ptr: the hash bucket lock * @wake: the wake handler for this queue + * @wake_data: data associated with the wake handler * @key: the key the futex is hashed on * @pi_state: optional priority inheritance state * @rt_waiter: rt_waiter storage for use with requeue_pi @@ -171,6 +172,7 @@ struct futex_q { struct task_struct *task; spinlock_t *lock_ptr; futex_wake_fn *wake; + void *wake_data; union futex_key key; struct futex_pi_state *pi_state; struct rt_mutex_waiter *rt_waiter;