From nobody Tue Dec 2 01:04:49 2025 Received: from mail-pj1-f52.google.com (mail-pj1-f52.google.com [209.85.216.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 1BA2D2C0272 for ; Sat, 22 Nov 2025 19:09:41 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.52 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763838585; cv=none; b=cvtpJ6gNNYipWe2WmCb+6Gv+2yrLn2ThQQtgMjUlFQH73G0DJHtAi/x9Nb4VokOtL2HH+YnLfYt+iEVYVPGw8OEqnUrVXaCzTEDKMlJYgnYwbfQflWjmPnN+WVeC90Ly6yMnUxWC7d72smAwkYESqeKuZLNba9xLQNV5nKGauQA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763838585; c=relaxed/simple; bh=qJ3U5f7S00O4PVFLpoe1rxGgXP76D4a2BQqXWP/boAQ=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=JJ33qi16UFndq0tln3oDXVjjiO/61tY9dvxjHRI9vTNI1W7L/MmO50nZAWAo3B2jSLExRwECeF3fsanUjz/lL+GujxEOLT6XKDCgfZ1aizck+FjogIWCNdOOh1aWpTB0ReqmpfgXwu3mUwrmAXI1XdfJ89JG7WmGpE02jGpSpmU= 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=TWmnXgNL; arc=none smtp.client-ip=209.85.216.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 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="TWmnXgNL" Received: by mail-pj1-f52.google.com with SMTP id 98e67ed59e1d1-343d73d08faso1625884a91.0 for ; Sat, 22 Nov 2025 11:09:41 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1763838581; x=1764443381; darn=vger.kernel.org; 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=+9nHlyikDXQbz4KH8BckZerXrDqGPJUNjzdjJ/ii1Vs=; b=TWmnXgNLnjb45K71bwVEXsFEtfQm9F1h8RdRENmezwmDwaRNwjvwidAmu25jXJ3KwW dzg0oohiTh+Sz5TiMAKCFTNIzZdytqxf3Cax+zNj8sd7Mo61Sn8UpcPgHDdy29S1xWuj ZrRL1yEN9FG0di39JJKvY9DjG0mO0WDNwZ1geAF+ZPs6o6mEGsH019zOeW+x/D/SrTH8 QssyINw7c+Bq5Fbf+QQlBbUOQBK+FUDnnWNq1IqTSgOco82jXkHQZBeqrhBZz0x1SsQs ulV32pf01E6ygHxjtoXenkAKhUyP46h7Wy5Pegel6udbOXjjjfHTT6n5w2QI7SBKAafO a7Sg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763838581; x=1764443381; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=+9nHlyikDXQbz4KH8BckZerXrDqGPJUNjzdjJ/ii1Vs=; b=WgQ/Z20/69770+S6bNGsbVtqgIkntREhzDMqwLHe03U9L42R/mxbD4p2HdBNAjxMh6 MhbBc2ySaWRPad60aV7Oaax50ZGQVxpB1NO92LDg+AjkgGruO7/6F3QDXkxycSc0dc7O Rjg/JNXmycaoEETFRQ6elyiQgmqZ4Lohha9eHs0ogitwXxVQ6S5aynig9eGl4fWDau14 sJpUkUDzttGu1VrwDJuS3qqFjI8P74IrdIH3mfl2mxOK+f04AeDDxk2albo98iVyViNf 2jRUH5zNkQ5E6QevdtyC5VlNX7bWNpeRnGt3ih2P0eOjSemUc1HNSixFvvm2tBMpwb9/ 3Png== X-Forwarded-Encrypted: i=1; AJvYcCWx2/Brwbgz1V6oaVfQDuFRKrHvBIOEaq3U6qLdFGx/16vYe9QTwO/9elEFEAnn/9QljHcePy90AiwSQ+k=@vger.kernel.org X-Gm-Message-State: AOJu0YwX/iW0zWwcGDBeeCLoO8x38upUSNlplCDdp3rISWclciDaqHh6 AmFT4sKU8PhrNCYwtNQYXjtPed/z7h5T+CLKuOu1dWQJ9ouHkYSNobmD X-Gm-Gg: ASbGncsu2a/1hdVG1oDWLF+Bgu0gYSQGJqV0l27CHCvqoNuku3z6y7921wNjNcaJisR J5BtpKEasb8hZg+MtDmlN1i3/J52rMZeHJtG4PMQRL1hTcWMUtC9Vwplnj8z9DdLBox7714bc2q 1PaXOPz+N942QCn0Uci9J41Ong55iiPR3Zrrnp/EBjtq01wFXGJKpiL/eKDnB9/CQz6p/+h2yn4 AFjHK1+9CjJ9tvNE4oXM2KAeF1AMUx2KPCwXoQpRUgH+O4HzZHnD9ZmJne4cPPSCrFv9sauhavF fPDPtXnOGDoXz6dlU+Ae6wVd/YtT85Jfk1N30GXAgFr/U16sRRmjn2xmidSXIJ4HXsZl1POm+dN sCEV29v711I7jiLhY+HI4/UFKUlZ0YXfRbmiHiN9SuwvAScWRvnJax2er86rFgR1w+gbKRiuJbV 58BuRd/cT8byzsGugcStV87akIuekrTQLYQJNH/UHHFknXEK9qLH36LpqcaV/UNbKvCx9Urldiq x+DSmXSc6QMzhxax3A= X-Google-Smtp-Source: AGHT+IHb0z+PhBCccKtKvngozSyJyneBKff2ARjc3QTVZMUW2ZYA5yjzHM0fi+L0Ka1q21FMC8v9Zw== X-Received: by 2002:a17:90b:1dcb:b0:341:1a50:2ea9 with SMTP id 98e67ed59e1d1-347298c120fmr10992972a91.16.1763838580709; Sat, 22 Nov 2025 11:09:40 -0800 (PST) Received: from CyberKunju.localdomain ([103.92.100.179]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3472693c1e9sm8869211a91.15.2025.11.22.11.09.38 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 22 Nov 2025 11:09:40 -0800 (PST) From: Navaneeth K To: ojeda@kernel.org, alex.gaynor@gmail.com Cc: wedsonaf@gmail.com, rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, Navaneeth K Subject: [PATCH 1/2] rust: kernel: document safety for rust_fmt_argument Date: Sat, 22 Nov 2025 19:09:07 +0000 Message-ID: <20251122190908.259929-2-knavaneeth786@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251122190908.259929-1-knavaneeth786@gmail.com> References: <20251122190908.259929-1-knavaneeth786@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Add a proper // SAFETY: comment for the unsafe pointer dereference in rust_fmt_argument. The comment explains that the caller guarantees the pointer validity, satisfying the Rust-for-Linux safety documentation requirements. Signed-off-by: Navaneeth K --- rust/kernel/print.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/kernel/print.rs b/rust/kernel/print.rs index 2d743d78d220..49fa87dfbce8 100644 --- a/rust/kernel/print.rs +++ b/rust/kernel/print.rs @@ -24,7 +24,7 @@ use fmt::Write; // SAFETY: The C contract guarantees that `buf` is valid if it's less = than `end`. let mut w =3D unsafe { RawFormatter::from_ptrs(buf.cast(), end.cast())= }; - // SAFETY: TODO. + // SAFETY: The caller guarantees that `ptr` points to a valid `fmt::Ar= guments`. let _ =3D w.write_fmt(unsafe { *ptr.cast::>() }); w.pos().cast() } --=20 2.43.0 From nobody Tue Dec 2 01:04:49 2025 Received: from mail-pj1-f51.google.com (mail-pj1-f51.google.com [209.85.216.51]) (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 1B92E2C1580 for ; Sat, 22 Nov 2025 19:09:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.51 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763838588; cv=none; b=rV+8fuPTt4l+1V//2Je2vGmY0tSjM7kchlnolXkdIJuisnWwFIDZNPInk0nUv3YhoEo7dRDn4eO7R+yJbSBK//syt/Rsa6IQp79Jvdrlkm21Uco+A6jtGqBTncppABPuroDU9d/kxNmE4A8MC4x5lT5XU5TGAHAbPBT+dpLyr8o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763838588; c=relaxed/simple; bh=RZsgM80J0Egr4NbtBLTBbbMXEw9RXfC+TWU5I6gRC/U=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=AwgQK+bNOuoPsgmUhQxiteMD1409IyHsE+xgqbRqc7XDuQekHZ8qi17OgA6yOo+QQFSbh8h6dNlx/5ngXjcriAeNRIX6bYmiBoapLM8UkSQQV+JoGlLJSfY05ribhbmHgcguCYXBQmmEf/6esIIK6uM1WY+z1ZffFSq8fiq2bPM= 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=kUValAEA; arc=none smtp.client-ip=209.85.216.51 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="kUValAEA" Received: by mail-pj1-f51.google.com with SMTP id 98e67ed59e1d1-34585428e33so3065071a91.3 for ; Sat, 22 Nov 2025 11:09:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1763838584; x=1764443384; darn=vger.kernel.org; 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=/KIU3JzkgUX7/zqerWohTpAVjCoV5JKRdjXZA4NoDZ0=; b=kUValAEAji2d+oH4hWoGzT3IQsalX5I8+WGboKGdVC9HWvRx4flp7qFtwEsenazt2s 3mGa2aef39N7gHemq7AGc5gV64++mV8n7V1+l38J7abAFGVHbrYp5npZJbp/MIwrwLpF Rwe8PoBGRjMVJfdUUuqdw2bI7UwKSbeJn7fMg5qFXQTWFJlacN5OBJH5WsZS60SWs9YO OSJI99JP/q90teZc5nrMNs65XitT/+Z41q+Sdu13nXNLaK9Tpq3bY8k4AcMe/od+nB9z Nczpr1BxDasf6oTUVwb+dOaMYsTof4wVSqSO4u9eUNVFGoz3KJ5aVRpNEy6BbpAUJLco 6T+Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763838584; x=1764443384; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=/KIU3JzkgUX7/zqerWohTpAVjCoV5JKRdjXZA4NoDZ0=; b=udyVDx5y01a37yinIHimy3kmBEsVgvHcX+P7G/gGuuzbot2Sumu79fckIDYseDbhnS RKEzEj2QfCAXc3xo57oixy46GeHStr4xYpuM7OLL/UIRwuCI0QxBK3raEJLgjEEfnx3t Y8E22S6sDIjCuu626WneUqaEHSRfzJBNEUxVn50Svt57X2JDjFjO6Rq5Rsv+JG6nJChJ 29/3b86M1ZLzT8ivYJ9OyVdsYolTF8nDlNQUlgx34rrHrFoZm701NX6Y7mlYpE0W/ctz AmOJVlQMnc5QomUNQkM4Ae8pXlhdh7KkNSs11OvBGryacEHtwsceJ7t0X5foQg1Pjhf8 xQ5Q== X-Forwarded-Encrypted: i=1; AJvYcCVmliHJA4hu1M3Mw1XopDr5k2gWpyrNJGYEz0hb434HNL3K+m86i/cb1v2CQkNRlWQpRF/ooM7TtGVhoMY=@vger.kernel.org X-Gm-Message-State: AOJu0YwBxeE+ZYt9x2Ig/gZhrQA9lp5n4nlyASGIjbSNGsyR3gf81825 2Zz7NuUuIURZCB6+yZUFShFV35HpzXRlkLsOCk6QuqzG43Hy9ugBxRGY X-Gm-Gg: ASbGncv44PyruQGdCZGgx5e24QWanuuSF/BKyKs8oTOyCOBN4RRKVL+RI3z5TFT82Bo EdYtjaOTvL9J5NXelm7QntgX6tNnRXkd4DybAOeD/bJJx/eksdlxFwRwhU/GdPTNvN0760eU4oh FyzR11C0EcPzO3CIorBeKXN0GeLvbKJR9V0qzfGPQtKGn8B78MaYBffaSAo1iCfUjz83ojEk7J1 SYNCZ8MYsA1sP0HWu+mbHEkllJb2Yz7CUSVJ4bLhfhlaQP4dYZZ3t/u9iRxgVoZF3eS+/Lwahq9 wkbJYcv5RUf6lIkgKRUwPnfpG51IYsQ+Df+Tj9RYUlCV5yUzlup1Esj9QbnnEnGuSCw9yvAY2Ms cKNKgzOoxkwttmwa7Ny7AH4WheO+P4HnOu56A1EU4LtCUM7eq9pn4d/uRVFI+gd17dr/OeoBfal u3r5bdXCOU7GRIc45fshXo/gSChj5bPejAKKK8L4KZWRAqV6Yr7vtangR197Z58lehXjs01f5uM ciJ06iibqoeByUvRc6e9KvXhaha/w== X-Google-Smtp-Source: AGHT+IFojcUrIOa64/eFaDsbKJQK4vmvJH0g5hX/KQVDz0MaurFL9dG3fOF6cFrtJEs/mj+OzZO84A== X-Received: by 2002:a17:90b:3510:b0:330:6d2f:1b5d with SMTP id 98e67ed59e1d1-34733f225d6mr7329215a91.26.1763838583713; Sat, 22 Nov 2025 11:09:43 -0800 (PST) Received: from CyberKunju.localdomain ([103.92.100.179]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-3472693c1e9sm8869211a91.15.2025.11.22.11.09.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 22 Nov 2025 11:09:43 -0800 (PST) From: Navaneeth K To: ojeda@kernel.org, alex.gaynor@gmail.com Cc: wedsonaf@gmail.com, rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, Navaneeth K Subject: [PATCH 2/2] rust: kernel: document safety for as_str_unchecked Date: Sat, 22 Nov 2025 19:09:08 +0000 Message-ID: <20251122190908.259929-3-knavaneeth786@gmail.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20251122190908.259929-1-knavaneeth786@gmail.com> References: <20251122190908.259929-1-knavaneeth786@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Replace the TODO safety comment with a proper explanation. The safety of from_utf8_unchecked relies on the caller guaranteeing that the input bytes are valid UTF-8. Signed-off-by: Navaneeth K --- rust/kernel/str.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rust/kernel/str.rs b/rust/kernel/str.rs index 5c74e5f77601..2801388c6bd1 100644 --- a/rust/kernel/str.rs +++ b/rust/kernel/str.rs @@ -385,7 +385,7 @@ pub fn to_str(&self) -> Result<&str, core::str::Utf8Err= or> { /// ``` #[inline] pub unsafe fn as_str_unchecked(&self) -> &str { - // SAFETY: TODO. + // SAFETY: The caller guarantees that the contents are valid UTF-8. unsafe { core::str::from_utf8_unchecked(self.as_bytes()) } } =20 --=20 2.43.0