]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
Fixes for 6.5
authorSasha Levin <sashal@kernel.org>
Sun, 22 Oct 2023 13:38:07 +0000 (09:38 -0400)
committerSasha Levin <sashal@kernel.org>
Sun, 22 Oct 2023 13:38:07 +0000 (09:38 -0400)
Signed-off-by: Sasha Levin <sashal@kernel.org>
queue-6.5/docs-move-rustdoc-output-cross-reference-it.patch [new file with mode: 0644]
queue-6.5/rust-docs-fix-logo-replacement.patch [new file with mode: 0644]
queue-6.5/series

diff --git a/queue-6.5/docs-move-rustdoc-output-cross-reference-it.patch b/queue-6.5/docs-move-rustdoc-output-cross-reference-it.patch
new file mode 100644 (file)
index 0000000..7731a54
--- /dev/null
@@ -0,0 +1,98 @@
+From 98531cf9e097d88165612dd3efec709678abfd06 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Tue, 18 Jul 2023 10:15:33 -0500
+Subject: docs: Move rustdoc output, cross-reference it
+
+From: Carlos Bilbao <carlos.bilbao@amd.com>
+
+[ Upstream commit 48fadf44007568e75c7af92857083058d57be403 ]
+
+Generate rustdoc documentation with the rest of subsystem's documentation
+in Documentation/output. Add a cross reference to the generated rustdoc in
+Documentation/rust/index.rst if Sphinx target rustdoc is set.
+
+Reviewed-by: Akira Yokosawa <akiyks@gmail.com>
+Signed-off-by: Carlos Bilbao <carlos.bilbao@amd.com>
+Reviewed-by: Martin Rodriguez Reboredo <yakoyoku@gmail.com>
+Signed-off-by: Jonathan Corbet <corbet@lwn.net>
+Link: https://lore.kernel.org/r/20230718151534.4067460-2-carlos.bilbao@amd.com
+Stable-dep-of: cfd96726e611 ("rust: docs: fix logo replacement")
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ Documentation/rust/index.rst |  8 ++++++++
+ rust/Makefile                | 15 +++++++++------
+ 2 files changed, 17 insertions(+), 6 deletions(-)
+
+diff --git a/Documentation/rust/index.rst b/Documentation/rust/index.rst
+index 4ae8c66b94faf..e599be2cec9ba 100644
+--- a/Documentation/rust/index.rst
++++ b/Documentation/rust/index.rst
+@@ -6,6 +6,14 @@ Rust
+ Documentation related to Rust within the kernel. To start using Rust
+ in the kernel, please read the quick-start.rst guide.
++.. only:: rustdoc and html
++
++      You can also browse `rustdoc documentation <rustdoc/kernel/index.html>`_.
++
++.. only:: not rustdoc and html
++
++      This documentation does not include rustdoc generated information.
++
+ .. toctree::
+     :maxdepth: 1
+diff --git a/rust/Makefile b/rust/Makefile
+index 4124bfa01798d..b9acbe5a7a5d5 100644
+--- a/rust/Makefile
++++ b/rust/Makefile
+@@ -1,5 +1,8 @@
+ # SPDX-License-Identifier: GPL-2.0
++# Where to place rustdoc generated documentation
++rustdoc_output := $(objtree)/Documentation/output/rust/rustdoc
++
+ obj-$(CONFIG_RUST) += core.o compiler_builtins.o
+ always-$(CONFIG_RUST) += exports_core_generated.h
+@@ -65,7 +68,7 @@ quiet_cmd_rustdoc = RUSTDOC $(if $(rustdoc_host),H, ) $<
+       OBJTREE=$(abspath $(objtree)) \
+       $(RUSTDOC) $(if $(rustdoc_host),$(rust_common_flags),$(rust_flags)) \
+               $(rustc_target_flags) -L$(objtree)/$(obj) \
+-              --output $(objtree)/$(obj)/doc \
++              --output $(rustdoc_output) \
+               --crate-name $(subst rustdoc-,,$@) \
+               @$(objtree)/include/generated/rustc_cfg $<
+@@ -82,15 +85,15 @@ quiet_cmd_rustdoc = RUSTDOC $(if $(rustdoc_host),H, ) $<
+ # and then retouch the generated files.
+ rustdoc: rustdoc-core rustdoc-macros rustdoc-compiler_builtins \
+     rustdoc-alloc rustdoc-kernel
+-      $(Q)cp $(srctree)/Documentation/images/logo.svg $(objtree)/$(obj)/doc
+-      $(Q)cp $(srctree)/Documentation/images/COPYING-logo $(objtree)/$(obj)/doc
+-      $(Q)find $(objtree)/$(obj)/doc -name '*.html' -type f -print0 | xargs -0 sed -Ei \
++      $(Q)cp $(srctree)/Documentation/images/logo.svg $(rustdoc_output)
++      $(Q)cp $(srctree)/Documentation/images/COPYING-logo $(rustdoc_output)
++      $(Q)find $(rustdoc_output) -name '*.html' -type f -print0 | xargs -0 sed -Ei \
+               -e 's:rust-logo\.svg:logo.svg:g' \
+               -e 's:rust-logo\.png:logo.svg:g' \
+               -e 's:favicon\.svg:logo.svg:g' \
+               -e 's:<link rel="alternate icon" type="image/png" href="[./]*favicon-(16x16|32x32)\.png">::g'
+       $(Q)echo '.logo-container > img { object-fit: contain; }' \
+-              >> $(objtree)/$(obj)/doc/rustdoc.css
++              >> $(rustdoc_output)/rustdoc.css
+ rustdoc-macros: private rustdoc_host = yes
+ rustdoc-macros: private rustc_target_flags = --crate-type proc-macro \
+@@ -154,7 +157,7 @@ quiet_cmd_rustdoc_test = RUSTDOC T $<
+               @$(objtree)/include/generated/rustc_cfg \
+               $(rustc_target_flags) $(rustdoc_test_target_flags) \
+               --sysroot $(objtree)/$(obj)/test/sysroot $(rustdoc_test_quiet) \
+-              -L$(objtree)/$(obj)/test --output $(objtree)/$(obj)/doc \
++              -L$(objtree)/$(obj)/test --output $(rustdoc_output) \
+               --crate-name $(subst rusttest-,,$@) $<
+ # We cannot use `-Zpanic-abort-tests` because some tests are dynamic,
+-- 
+2.42.0
+
diff --git a/queue-6.5/rust-docs-fix-logo-replacement.patch b/queue-6.5/rust-docs-fix-logo-replacement.patch
new file mode 100644 (file)
index 0000000..9ee4936
--- /dev/null
@@ -0,0 +1,62 @@
+From 3596febd0621d11a3c3cee6fb04ca5d531e1a6c6 Mon Sep 17 00:00:00 2001
+From: Sasha Levin <sashal@kernel.org>
+Date: Wed, 18 Oct 2023 17:55:27 +0200
+Subject: rust: docs: fix logo replacement
+
+From: Miguel Ojeda <ojeda@kernel.org>
+
+[ Upstream commit cfd96726e61136e68a168813cedc4084f626208b ]
+
+The static files placement by `rustdoc` changed in Rust 1.67.0 [1],
+but the custom code we have to replace the logo in the generated
+HTML files did not get updated.
+
+Thus update it to have the Linux logo again in the output.
+
+Hopefully `rustdoc` will eventually support a custom logo from
+a local file [2], so that we do not need to maintain this hack
+on our side.
+
+Link: https://github.com/rust-lang/rust/pull/101702 [1]
+Link: https://github.com/rust-lang/rfcs/pull/3226 [2]
+Fixes: 3ed03f4da06e ("rust: upgrade to Rust 1.68.2")
+Cc: stable@vger.kernel.org
+Tested-by: Benno Lossin <benno.lossin@proton.me>
+Reviewed-by: Andreas Hindborg <a.hindborg@samsung.com>
+Link: https://lore.kernel.org/r/20231018155527.1015059-1-ojeda@kernel.org
+Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
+Signed-off-by: Sasha Levin <sashal@kernel.org>
+---
+ rust/Makefile | 15 +++++++--------
+ 1 file changed, 7 insertions(+), 8 deletions(-)
+
+diff --git a/rust/Makefile b/rust/Makefile
+index b9acbe5a7a5d5..467f50a752dbd 100644
+--- a/rust/Makefile
++++ b/rust/Makefile
+@@ -85,15 +85,14 @@ quiet_cmd_rustdoc = RUSTDOC $(if $(rustdoc_host),H, ) $<
+ # and then retouch the generated files.
+ rustdoc: rustdoc-core rustdoc-macros rustdoc-compiler_builtins \
+     rustdoc-alloc rustdoc-kernel
+-      $(Q)cp $(srctree)/Documentation/images/logo.svg $(rustdoc_output)
+-      $(Q)cp $(srctree)/Documentation/images/COPYING-logo $(rustdoc_output)
++      $(Q)cp $(srctree)/Documentation/images/logo.svg $(rustdoc_output)/static.files/
++      $(Q)cp $(srctree)/Documentation/images/COPYING-logo $(rustdoc_output)/static.files/
+       $(Q)find $(rustdoc_output) -name '*.html' -type f -print0 | xargs -0 sed -Ei \
+-              -e 's:rust-logo\.svg:logo.svg:g' \
+-              -e 's:rust-logo\.png:logo.svg:g' \
+-              -e 's:favicon\.svg:logo.svg:g' \
+-              -e 's:<link rel="alternate icon" type="image/png" href="[./]*favicon-(16x16|32x32)\.png">::g'
+-      $(Q)echo '.logo-container > img { object-fit: contain; }' \
+-              >> $(rustdoc_output)/rustdoc.css
++              -e 's:rust-logo-[0-9a-f]+\.svg:logo.svg:g' \
++              -e 's:favicon-[0-9a-f]+\.svg:logo.svg:g' \
++              -e 's:<link rel="alternate icon" type="image/png" href="[/.]+/static\.files/favicon-(16x16|32x32)-[0-9a-f]+\.png">::g'
++      $(Q)for f in $(rustdoc_output)/static.files/rustdoc-*.css; do \
++              echo ".logo-container > img { object-fit: contain; }" >> $$f; done
+ rustdoc-macros: private rustdoc_host = yes
+ rustdoc-macros: private rustc_target_flags = --crate-type proc-macro \
+-- 
+2.42.0
+
index 203e7a6a090331e4d767d88c00a294d054470d27..96cbc9e526043f4211ad92daec3674416fcf30cc 100644 (file)
@@ -226,3 +226,5 @@ drm-amdgpu-fix-possible-null-pointer-dereference.patch
 powerpc-mm-allow-arch_force_max_order-up-to-12.patch
 powerpc-qspinlock-fix-stale-propagated-yield_cpu.patch
 net-make-sure-we-never-create-ifindex-0.patch
+docs-move-rustdoc-output-cross-reference-it.patch
+rust-docs-fix-logo-replacement.patch