From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from sender4-pp-f112.zoho.com (sender4-pp-f112.zoho.com [136.143.188.112]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 4DF4B242D9E; Mon, 20 Oct 2025 15:42:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=136.143.188.112 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760974966; cv=pass; b=O1kqHPaPYKwdygiFDCPLluwGOuiQ+qnBZG4al1xPzozaI9zEt0+4cMixpTmiQpHknvkJx+xGi/58YkX2TPFrJvdKGF0hjAKl/++7e2jA/ZpMS3LRZ+T6wP4jrjAfxxHlMOx4TCt8yhdyivseI3QyJhNGNNRjzqiKtaDE20qbclA= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760974966; c=relaxed/simple; bh=+zCfMEaimnIQeBDYATDZG9tN7TJnlorbW9UQo+gSdbo=; h=Content-Type:Mime-Version:Subject:From:In-Reply-To:Date:Cc: Message-Id:References:To; b=NvJnK6RdXg+HNhygS102ayPBmEX+Rtse85p0lVCarz86UxAn0Fm0OqftSLbIuzw34nH/xcpSwVU1xHV430aP1qFwsd2EeAbAeIt8YKvc1ni4a7a9DEjYn2sPDFu8fneqU8vNYCA5MNNi2ApE/wcmyEM1uj6OKqJmc/ipYQ5B8mc= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com; spf=pass smtp.mailfrom=collabora.com; dkim=pass (1024-bit key) header.d=collabora.com header.i=daniel.almeida@collabora.com header.b=KBL/eZfM; arc=pass smtp.client-ip=136.143.188.112 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=collabora.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=collabora.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=collabora.com header.i=daniel.almeida@collabora.com header.b="KBL/eZfM" ARC-Seal: i=1; a=rsa-sha256; t=1760974820; cv=none; d=zohomail.com; s=zohoarc; b=Ai6yEfvevnlicRnC6hUZILro9Xj58jvdixOTEejaTJAezMeYe2ReXvP5lgDe/WINSHWappBOFgEKq2//QLzV3b+ybSJd1N53dm9QBOeZUyqBWjfDkjkemswx40u7RhWcRhpjoxq72o2qvG8MdqeHNz7E7o1wMCgC4ipN2l4sh+s= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1760974820; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:Subject:To:To:Message-Id:Reply-To; bh=md/pBzoYcFzUHz80KevulIkZ5BiZWUg/YH97ioL+0fI=; b=HdM+49AnxQEKmoKUYQiZRIpVoAcA/DC0xlvRuxm8uf3W/fbDEia6nOs7GWoOtzoYE/UGda73iO9UBeIe/TCmPXDp0tkYKHbb1X3UKJZ0s7dPQMKxEWoXpALSm1wZ6mM2D4paCoug77yh/yogs5AUlLFDy+Dezq7mT6gkz4+RGiQ= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=collabora.com; spf=pass smtp.mailfrom=daniel.almeida@collabora.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1760974820; s=zohomail; d=collabora.com; i=daniel.almeida@collabora.com; h=Content-Type:Mime-Version:Subject:Subject:From:From:In-Reply-To:Date:Date:Cc:Cc:Content-Transfer-Encoding:Message-Id:Message-Id:References:To:To:Reply-To; bh=md/pBzoYcFzUHz80KevulIkZ5BiZWUg/YH97ioL+0fI=; b=KBL/eZfMEc9QO++XN/8UsD5kyy7gAS7vSEROcPEP17Q3eWx1vZVA4+k0asFa5R0J sTiiTblJtBEBMOtWvm98i8Kz/P/1W/M+5ncofRvrtjwyn46hZcH0B0AclLDJgq63STK 5Y/3Su2IZ1it6kk4ifqtXzfZAmYnm6mnjyTd48zQ= Received: by mx.zohomail.com with SMTPS id 1760974819040413.8982192024972; Mon, 20 Oct 2025 08:40:19 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Precedence: bulk X-Mailing-List: linux-pm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3826.700.81\)) Subject: Re: [RESEND PATCH v18 13/16] rust: regulator: use `CStr::as_char_ptr` From: Daniel Almeida In-Reply-To: <20251018-cstr-core-v18-13-9378a54385f8@gmail.com> Date: Mon, 20 Oct 2025 12:39:52 -0300 Cc: Greg Kroah-Hartman , "Rafael J. Wysocki" , Danilo Krummrich , Miguel Ojeda , Alex Gaynor , Boqun Feng , Gary Guo , =?utf-8?Q?Bj=C3=B6rn_Roy_Baron?= , Benno Lossin , Andreas Hindborg , Alice Ryhl , Trevor Gross , =?utf-8?Q?Arve_Hj=C3=B8nnev=C3=A5g?= , Todd Kjos , Martijn Coenen , Joel Fernandes , Christian Brauner , Carlos Llamas , Suren Baghdasaryan , Jens Axboe , Lorenzo Stoakes , Vlastimil Babka , "Liam R. Howlett" , Uladzislau Rezki , Bjorn Helgaas , =?utf-8?Q?Krzysztof_Wilczy=C5=84ski?= , Viresh Kumar , Nishanth Menon , Stephen Boyd , Breno Leitao , Liam Girdwood , Mark Brown , Michael Turquette , David Airlie , Simona Vetter , Luis Chamberlain , Russ Weight , Alexander Viro , Jan Kara , Peter Zijlstra , Ingo Molnar , Will Deacon , Waiman Long , Nathan Chancellor , Nick Desaulniers , Bill Wendling , Justin Stitt , rust-for-linux@vger.kernel.org, linux-kernel@vger.kernel.org, linux-block@vger.kernel.org, linux-pci@vger.kernel.org, linux-pm@vger.kernel.org, linux-clk@vger.kernel.org, dri-devel@lists.freedesktop.org, linux-fsdevel@vger.kernel.org, llvm@lists.linux.dev, Tamir Duberstein Content-Transfer-Encoding: quoted-printable Message-Id: References: <20251018-cstr-core-v18-0-9378a54385f8@gmail.com> <20251018-cstr-core-v18-13-9378a54385f8@gmail.com> To: Tamir Duberstein X-Mailer: Apple Mail (2.3826.700.81) X-ZohoMailClient: External > On 18 Oct 2025, at 16:16, Tamir Duberstein wrote: >=20 > From: Tamir Duberstein >=20 > Replace the use of `as_ptr` which works through ` Deref::deref()` in preparation for replacing > `kernel::str::CStr` with `core::ffi::CStr` as the latter does not > implement `Deref`. >=20 > Signed-off-by: Tamir Duberstein > --- > rust/kernel/regulator.rs | 9 ++++++--- > 1 file changed, 6 insertions(+), 3 deletions(-) >=20 > diff --git a/rust/kernel/regulator.rs b/rust/kernel/regulator.rs > index b55a201e5029..65a4eb096cae 100644 > --- a/rust/kernel/regulator.rs > +++ b/rust/kernel/regulator.rs > @@ -84,7 +84,7 @@ pub struct Error { > pub fn devm_enable(dev: &Device, name: &CStr) -> Result { > // SAFETY: `dev` is a valid and bound device, while `name` is a = valid C > // string. > - to_result(unsafe { = bindings::devm_regulator_get_enable(dev.as_raw(), name.as_ptr()) }) > + to_result(unsafe { = bindings::devm_regulator_get_enable(dev.as_raw(), name.as_char_ptr()) }) > } >=20 > /// Same as [`devm_enable`], but calls = `devm_regulator_get_enable_optional` > @@ -102,7 +102,9 @@ pub fn devm_enable(dev: &Device, name: = &CStr) -> Result { > pub fn devm_enable_optional(dev: &Device, name: &CStr) -> = Result { > // SAFETY: `dev` is a valid and bound device, while `name` is a = valid C > // string. > - to_result(unsafe { = bindings::devm_regulator_get_enable_optional(dev.as_raw(), = name.as_ptr()) }) > + to_result(unsafe { > + bindings::devm_regulator_get_enable_optional(dev.as_raw(), = name.as_char_ptr()) > + }) > } >=20 > /// A `struct regulator` abstraction. > @@ -268,7 +270,8 @@ pub fn get_voltage(&self) -> Result { > fn get_internal(dev: &Device, name: &CStr) -> Result> = { > // SAFETY: It is safe to call `regulator_get()`, on a device = pointer > // received from the C code. > - let inner =3D from_err_ptr(unsafe { = bindings::regulator_get(dev.as_raw(), name.as_ptr()) })?; > + let inner =3D > + from_err_ptr(unsafe { = bindings::regulator_get(dev.as_raw(), name.as_char_ptr()) })?; >=20 > // SAFETY: We can safely trust `inner` to be a pointer to a = valid > // regulator if `ERR_PTR` was not returned. >=20 > --=20 > 2.51.1 >=20 >=20 Reviewed-by: Daniel Almeida