From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f181.google.com (mail-pl1-f181.google.com [209.85.214.181]) (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 2BD35378825 for ; Sat, 1 Aug 2026 12:12:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.181 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785586342; cv=none; b=Xd2rrIMl/G9kYSslPjpiJG4giM1+HFAVK9lYzPuCtq1po6wZx0csJysdOLGGbuXp6AhNEpR9Wu5of6mqLs/DQ4dEYPYqf4dkDPjSlQsKJNyvUwUcYPUjCJACnct3a3vUFEelUVkIRqZ2k119Kd3i0VE4DvAQWExYSdugePOkVFY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1785586342; c=relaxed/simple; bh=kfSQrl1MR+AyG0VE5wHOAhlayRLI/h0scohGCwT3Ncw=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=NTtSZoDwk2uYgfavqMw0ZYxCjHdGGwNtx8sjob+vHRWplNuPxtKx/q1oljtpzRRRykRsJqUwDVjJWZIKRqzD0h11WGpCSNDMTcQS9Iv1Jl7cWoyUnkm6H0AyI0Q+mRNrfiCihBrI4eUkWpYMONYgZyVNQumTPHgka1dvov96KcM= 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=h6kKraMQ; arc=none smtp.client-ip=209.85.214.181 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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="h6kKraMQ" Received: by mail-pl1-f181.google.com with SMTP id d9443c01a7336-2cfbbdfa60bso16349555ad.3 for ; Sat, 01 Aug 2026 05:12:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785586340; x=1786191140; darn=vger.kernel.org; h=content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:from:to:cc:subject:date:message-id:reply-to :content-type; bh=Qq/DwZH7YAlYucV7P0m7oCNJvs6xdClz/fo5aunqV0U=; b=h6kKraMQKndKCbP+HpiUasGgTgG1rWIx9T+BVsY1TpnE7Y02D83DuMsF5kNgUrjVJ5 sryweLGfiXElVmxulJDdWD9TqHJCIyrViAH5QBCNUZSs9Kv5ObcHuC3b5fapefzy1zOL 0jfev+NRBIdLCalMWW2FdkRoPCkJ1IyEYiO40yb/Gj0AHtG0tB8lm6HyiXPW2VknvVsc UFRwXjfRB3RlE7pzzVtZGD+2rJ+2ksieQ5BAV2VW/yAtOmGHD4IqRtqtMbVBLv1HJt+0 HiRQBA2OiGDxEOTCGO0UD9Kkq5EzOf8jQEPufD7Q1AbOuLyKMkG6LU+e7aNhWfOTpb1m W5sQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785586340; x=1786191140; h=content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=Qq/DwZH7YAlYucV7P0m7oCNJvs6xdClz/fo5aunqV0U=; b=VTWL3XgGpMYr3Ga3WRQaPJciGJ4F6S2/2mtCErONtNt/Hc4qWaPc4OnhhJT+ffWrlJ WbjNEjMc1583CoqXVPFgPWN5fas8AAIdwCmF5zDRyz5gIGxc/G9B55m1QPOOdJCBADJN XxvaVplmNnKsJgNQXidORbnhV1NW/EEcrzxgi2vqfzLCkY1/4f571M8B1uv5RJ8prmLD Klqi2H3RbHuzJRiKHjIcqw2I3qiYrOR8ti/qZJrKFitq+wzqBlh+sBlfWVdGv5NBjAvM /Cu4ullVkMgZuivBzYO5geeHUSBrj7/aLkW3vblYVIcYTSaJ3CBR+W2mW4hm7JkDApnG 2inQ== X-Forwarded-Encrypted: i=1; AHgh+RqZi38B2OkL5CJ6+/qN2Z2NyfdPIvzbb1rjAS2sesEATyaRdza6Gm1e4pvPSSVYsA3c/0LWohhG3BjsLiM=@vger.kernel.org X-Gm-Message-State: AOJu0Yy8XgVJKKCIY+qxNaMAjEBVBrxvVB8G2NDFkw5hqF16KAWlYh1d +esPbyIy3a7osRshxaZd+f0/y0lLYmAWaZqP4TK6tDqjNRImh2VtSJ26 X-Gm-Gg: AR+sD135zB7nkhdMhfD+AgzmRYJYiyyzX1S5LTmG+gqfazrKsN3JhmlE6jKPoCJm+/M FBQtg1HI0ivagnMCuxrkcn6n6x7R0NivkD07FZq7O6l+efR2YohxkKoVETu0yETx2OiizoluljW nqeBI8MrbJmLrqJmi8Jt8LCZhxJTjsACcR1Xee1lXnHiYUt7He0N4DMp6jdfaTIvtDDqzaMG6zG tdSkxcjPcsx66TaWR87qxcspLg8ETb7+n0q5LI7LWuYG2WvPBvHBNmiNVm1uuXVF4oXJRGbP1OH 5EfVCM3hr93WzIs2toBt+yHvQZZGlg2KFPvl/nuhgCjKEb98FmekKk89qHJ6S90WxMlg4CUy6Hh 6wkh/Aha6GBhMf44jks5QwFSlKg+BrXTfIGfKUlBOBuy40PLCmNof7CYvBkKzhX8e/vZpv+SPyk 3KZXGegePv2o6w5r24VafKD6gtk55qHH73h9dX3GGk60MDzsW2kId3aQ/fFJC7Z4q0NLBe57G8Y fMfvsoxlImcKI056mhs2Wsppqd+VFDa9A== X-Received: by 2002:a17:903:1b43:b0:2ce:d957:59c4 with SMTP id d9443c01a7336-2d052188a6bmr33458805ad.6.1785586340353; Sat, 01 Aug 2026 05:12:20 -0700 (PDT) Received: from [10.0.2.15] (KD106167137155.ppp-bb.dion.ne.jp. [106.167.137.155]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2d04b15d26esm16948215ad.76.2026.08.01.05.12.15 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 01 Aug 2026 05:12:17 -0700 (PDT) Message-ID: Date: Sat, 1 Aug 2026 21:12:00 +0900 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] scripts/kernel-doc: Fix kdoc for Python 3.9-3.11 To: Ryszard Knop , linux-doc@vger.kernel.org, Jonathan Corbet Cc: Randy Dunlap , Shuicheng Lin , Jani Nikula , linux-kernel@vger.kernel.org, intel-xe@lists.freedesktop.org, Akira Yokosawa References: <20260731144508.912049-1-ryszard.knop@intel.com> Content-Language: en-US From: Akira Yokosawa In-Reply-To: <20260731144508.912049-1-ryszard.knop@intel.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Hi, On Fri, 31 Jul 2026 16:45:08 +0200, Ryszard Knop wrote: > The syntax used by the excess description suggestion change works on > Python 3.12+, while we need to support 3.9+. > > Signed-off-by: Ryszard Knop Tested-by: Akira Yokosawa And here are needed tags for helping Jon (supposed to go ahead of Sob): Fixes: d7758384ccb4 ("scripts/kernel-doc: Suggest possible names for excess descriptions") Reported-by: Akira Yokosawa Closes: https://lore.kernel.org/22a9276d-c103-4306-a617-7f34abcd5c29@gmail.com/ > --- > tools/lib/python/kdoc/kdoc_parser.py | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/tools/lib/python/kdoc/kdoc_parser.py b/tools/lib/python/kdoc/kdoc_parser.py > index 884f42584667..9cba20f827c4 100644 > --- a/tools/lib/python/kdoc/kdoc_parser.py > +++ b/tools/lib/python/kdoc/kdoc_parser.py > @@ -601,7 +601,8 @@ class KernelDoc: > if not suggestions: > return "" > > - return f"(did you mean one of: '{"', '".join(suggestions)}')" > + joined_suggestions = "', '".join(suggestions) > + return f"(did you mean one of: '{joined_suggestions}')" > > def check_sections(self, ln, decl_name, decl_type): > """ Thanks, Akira