Received: by 2002:a05:7412:cfc7:b0:fc:a2b0:25d7 with SMTP id by7csp1911113rdb; Tue, 20 Feb 2024 10:31:28 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCUrpcVbYZk5K7vdOgtreVzE4Ku6CxQ64VdEwRLh5o2oBt1VYnnt60VN9BYwtKjUJwoaMkbFO7odAyf6wzYzVE30qZA+EOnoiffZlFdb/w== X-Google-Smtp-Source: AGHT+IGymu7kG+DPGTmplrwpLUaahVgapClHOp5dUSgsI1YPebKhQOMJ81rYdfVURsAH0Z0IhEh1 X-Received: by 2002:a05:6402:609:b0:564:eff:5798 with SMTP id n9-20020a056402060900b005640eff5798mr8216552edv.38.1708453888382; Tue, 20 Feb 2024 10:31:28 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1708453888; cv=pass; d=google.com; s=arc-20160816; b=mFtOJTwgqRObD2/L9BUWgZP5r9CqPpI8kUXeEnb4DsStLjeMS+qWCEvrl5h1ojSrJb RDtX07AGCAhxjtCgoziJHe+7Ss362BXNknKZGO03cvqGlejonEIcr4/6RHznZJSIqjUp RFzZngrKbzoW9w54y2817O36qCUvE0P2uPCdATdsZMzU6QhTh4CqlLdxRm50/9qJLesd il+D1RR1nPdHeupygWNyL/XONcmLCO3BuFUUL0/FMwuZykNuyv1PO9k0kYUIEgpad+8p KU9f3T3VwMVXffwwrWck71mb77kCLulRkCl/tgYNgiUUCIZDcyZwHTaK1klKnF2uSJc1 GZew== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=1m1CBnTzdSNLBkji0F8nlKue38PNkEwKG+U7wyI74bs=; fh=++TSnxsFYxS6nclFpEwvS/zycBwRImI+FngzOJ9TVQI=; b=Y3vJ9i9e/G1/sghPjHum48qhTQ13XiWUykS6FaH2R7krvOMZuelBu8fzM+hi/vZm16 pcnU1dxbSEOU8FTFMNTFskfO0c4o7R5hqQvUnUTX7+oy47FSFVPaEyhuECOvBUMu3gH+ Y1XzDz1a5zqXdb7Ouyr8jhcCwvtAhOiRwGNoj5ZGpmNuzCGVTARsYbblvkLky8am5C4b khucK9hz0sL5/Sd5FXEGBQ7RO+60F87/IHMRs3eK7DGiXOHlc0xD/rV5k6RaC61qGv9/ QJCcsGoNPo3ku+bGf9+7A3qIT0fpACeA0eD9DX8kuLyc/PROEvj9MxIHEVgpb2hzCbb4 ndKQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=naKk3zcZ; arc=pass (i=1 spf=pass spfdomain=gmail.com dkim=pass dkdomain=gmail.com dmarc=pass fromdomain=gmail.com); spf=pass (google.com: domain of linux-kernel+bounces-73507-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-73507-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from am.mirrors.kernel.org (am.mirrors.kernel.org. [147.75.80.249]) by mx.google.com with ESMTPS id w6-20020a05640234c600b005638fa60d3esi3652121edc.573.2024.02.20.10.31.28 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Feb 2024 10:31:28 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-73507-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) client-ip=147.75.80.249; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20230601 header.b=naKk3zcZ; arc=pass (i=1 spf=pass spfdomain=gmail.com dkim=pass dkdomain=gmail.com dmarc=pass fromdomain=gmail.com); spf=pass (google.com: domain of linux-kernel+bounces-73507-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.80.249 as permitted sender) smtp.mailfrom="linux-kernel+bounces-73507-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by am.mirrors.kernel.org (Postfix) with ESMTPS id 291621F21F01 for ; Tue, 20 Feb 2024 18:31:28 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 65D27127B60; Tue, 20 Feb 2024 18:31:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="naKk3zcZ" Received: from mail-lf1-f52.google.com (mail-lf1-f52.google.com [209.85.167.52]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DF8B51272C3; Tue, 20 Feb 2024 18:31:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.167.52 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708453881; cv=none; b=SORlQrpq6r/FxcXRSM1Mh/csU900q2caDBRkma0VNXh4KzWyHkEcF32pSBh3aZSu1YJ7ZtClvzj0GQ6WVRAa5QqAyLCWeEwZfbwXDS7v5BiWFt7HrtX7qxyzLLh7Ptj3ZMSkuUzCq/zMEjtIz6x9Z+1gmce7Z8P5w8FGUOlPaQE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708453881; c=relaxed/simple; bh=G8M3esNp4w3cKqktdmkXzcUCOTICX2MvjGQfFXO7bDQ=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=ioP3NiEx4yyY3h5wKas3iuEKC9Ju645X6ONe08BGVMX1P0dk45isbWKIuOhs++u/LdNG9U8WFO01PXo34TQm/JLkfORffjvriiyD1qhU/4AZORLcYdhkVr6LRBD535PIz94KZY/hMxTBmdzAXDUdXhORNOtHv/CaxWIiFyF2iMc= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=naKk3zcZ; arc=none smtp.client-ip=209.85.167.52 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-lf1-f52.google.com with SMTP id 2adb3069b0e04-5129cdae3c6so4598695e87.1; Tue, 20 Feb 2024 10:31:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1708453878; x=1709058678; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=1m1CBnTzdSNLBkji0F8nlKue38PNkEwKG+U7wyI74bs=; b=naKk3zcZN8HnRfXAThd/AyuK4i6Hwx/KVzVDzCFbsvKWTISW+f1rdNjd8emFCyeUzC VJmVpILDBTEB1FkxuWl9ZRXxunRbk5jHTU+jkM/NOG7Cf1pGxaOY6Hr6dBMLzVy8LPY8 SmKrgA3C1SklUKfA3o3hgVCweSs0apw31ePySOgbhBXfWylWOPAl+81iua3177eLm0mk VqOpllOjjay8yNgELim6e1KLteS8pRL0630n4CUivtazmpmztzx4SiW/ShwqfhziMCHe BgMZC5kuYRRofZVMKGH1g52aSScSzKGYUBSDpV4FPtefahrith9FZRfJWvamY7ytOI2Z /SgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1708453878; x=1709058678; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=1m1CBnTzdSNLBkji0F8nlKue38PNkEwKG+U7wyI74bs=; b=B7AwoD5LpodQCjSxuD9IcpY9GTiNbared2WjmHTpbAjDSGHEkUrs/8o26WY4L1ffww QMQ0yhZ5IsQpmK6w4J3R9A5Yyzc/PnjCmJRsHcABT2Tzi+ScfR6dEAgH7Fl2ZCjpyfGn 1JsVf8gjnG/fmnNDZwf1TZ03ZpoiC0aHiRaeztE3ssHB/0htjPXdXgYmkfeP9WfzkuDX +GkpsgGqorRhaPlwTJPDDcPUeyUsg2YiUpPE+fWtqwTC1vpdx5YJXRM95T00JJqO7uGA kbDi4K3Vho9nrCaIS8ZamTDCmddzMqvslPejYKDv4gakjbzcFH/QppmLlP3Fo/uuXQFK HpEg== X-Forwarded-Encrypted: i=1; AJvYcCXaYJfk/jBxQ2i4rHKaqd1kXTitSBJO8uDgqEneIdEuXN6gGLkWXz1/q7PBO9Wpqx41gr37OZOkwXOlNNlx+8Rx1qiCbJqet2Dlpe4m X-Gm-Message-State: AOJu0YzFDGRKO6PxVqvqvmK1R+mLF3+dGTnwzk8lv09mcHbH87vDyo5N tRwDiHkkENeBKlf5Tl8HwDaEWRy2kONwyXX7VijABUY5cjakjtsm X-Received: by 2002:a05:6512:138f:b0:512:c3dd:2e9f with SMTP id fc15-20020a056512138f00b00512c3dd2e9fmr2020891lfb.45.1708453877791; Tue, 20 Feb 2024 10:31:17 -0800 (PST) Received: from pc638.lan (host-185-121-47-193.sydskane.nu. [185.121.47.193]) by smtp.gmail.com with ESMTPSA id b14-20020ac247ee000000b005118add498asm1365937lfp.130.2024.02.20.10.31.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Feb 2024 10:31:17 -0800 (PST) From: "Uladzislau Rezki (Sony)" To: "Paul E . McKenney" Cc: RCU , Neeraj upadhyay , Boqun Feng , Hillf Danton , Joel Fernandes , LKML , Uladzislau Rezki , Oleksiy Avramchenko , Frederic Weisbecker Subject: [PATCH v5 0/4] Reduce synchronize_rcu() latency(v5) Date: Tue, 20 Feb 2024 19:31:11 +0100 Message-Id: <20240220183115.74124-1-urezki@gmail.com> X-Mailer: git-send-email 2.39.2 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This is a v5 that tends to improve synchronize_rcu() call in terms of latency reduction. This has been developed together with Neeraj Upadhyay. The delta between previous v4 and v5 is rather small. Main difference are cosmetic changes related to patch squashing and data structures splitting. It is based on Paul's dev branch. v4 -> v5: - furthers squashing to reduce number of patches; - remove the CONFIG_RCU_SR_NORMAL_DEBUG_GP Kconfig option and reuse already existing debug option which is CONFIG_PROVE_RCU; - add data structures in a separate patch. v4: https://lore.kernel.org/lkml/ZZ2bi5iPwXLgjB-f@google.com/T/ v3: https://lore.kernel.org/lkml/cd45b0b5-f86b-43fb-a5f3-47d340cd4f9f@paulmck-laptop/T/ v2: https://lore.kernel.org/all/20231030131254.488186-1-urezki@gmail.com/T/ v1: https://lore.kernel.org/lkml/20231025140915.590390-1-urezki@gmail.com/T/ Uladzislau Rezki (Sony) (4): rcu: Add data structures for synchronize_rcu() rcu: Reduce synchronize_rcu() latency rcu: Add a trace event for synchronize_rcu_normal() rcu: Support direct wake-up of synchronize_rcu() users .../admin-guide/kernel-parameters.txt | 14 + include/trace/events/rcu.h | 27 ++ kernel/rcu/tree.c | 363 +++++++++++++++++- kernel/rcu/tree.h | 20 + kernel/rcu/tree_exp.h | 2 +- 5 files changed, 424 insertions(+), 2 deletions(-) -- 2.39.2