All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] Revert "kheaders: substituting --sort in archive creation"
@ 2023-05-21 13:23 Masahiro Yamada
  2023-05-21 13:23 ` [PATCH 2/2] doc: Add tar requirement to changes.rst Masahiro Yamada
  2023-05-24 20:10 ` [PATCH 1/2] Revert "kheaders: substituting --sort in archive creation" Nicolas Schier
  0 siblings, 2 replies; 6+ messages in thread
From: Masahiro Yamada @ 2023-05-21 13:23 UTC (permalink / raw)
  To: linux-kbuild; +Cc: linux-kernel, Masahiro Yamada

This reverts commit 700dea5a0bea9f64eba89fae7cb2540326fdfdc1.

The reason for that commit was --sort=ORDER introduced in
tar 1.28 (2014). More than 3 years have passed since then.

Requiring GNU tar 1.28 should be fine now because we require
GCC 5.1 (2015).

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

 kernel/gen_kheaders.sh | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/kernel/gen_kheaders.sh b/kernel/gen_kheaders.sh
index 1ef9a87511f5..6d443ea22bb7 100755
--- a/kernel/gen_kheaders.sh
+++ b/kernel/gen_kheaders.sh
@@ -83,12 +83,9 @@ find $cpio_dir -type f -print0 |
 	xargs -0 -P8 -n1 perl -pi -e 'BEGIN {undef $/;}; s/\/\*((?!SPDX).)*?\*\///smg;'
 
 # Create archive and try to normalize metadata for reproducibility.
-# For compatibility with older versions of tar, files are fed to tar
-# pre-sorted, as --sort=name might not be available.
-find $cpio_dir -printf "./%P\n" | LC_ALL=C sort | \
-    tar "${KBUILD_BUILD_TIMESTAMP:+--mtime=$KBUILD_BUILD_TIMESTAMP}" \
-    --owner=0 --group=0 --numeric-owner --no-recursion \
-    -I $XZ -cf $tarfile -C $cpio_dir/ -T - > /dev/null
+tar "${KBUILD_BUILD_TIMESTAMP:+--mtime=$KBUILD_BUILD_TIMESTAMP}" \
+    --owner=0 --group=0 --sort=name --numeric-owner \
+    -I $XZ -cf $tarfile -C $cpio_dir/ . > /dev/null
 
 echo $headers_md5 > kernel/kheaders.md5
 echo "$this_file_md5" >> kernel/kheaders.md5
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH 2/2] doc: Add tar requirement to changes.rst
  2023-05-21 13:23 [PATCH 1/2] Revert "kheaders: substituting --sort in archive creation" Masahiro Yamada
@ 2023-05-21 13:23 ` Masahiro Yamada
  2023-05-24 20:12   ` Nicolas Schier
  2023-05-24 20:10 ` [PATCH 1/2] Revert "kheaders: substituting --sort in archive creation" Nicolas Schier
  1 sibling, 1 reply; 6+ messages in thread
From: Masahiro Yamada @ 2023-05-21 13:23 UTC (permalink / raw)
  To: linux-kbuild; +Cc: linux-kernel, Masahiro Yamada, Jonathan Corbet, linux-doc

tar is used to build the kernel with CONFIG_IKHEADERS.

GNU tar 1.28 or later is required.

Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

 Documentation/process/changes.rst | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
index a9ef00509c9b..3c0074214d75 100644
--- a/Documentation/process/changes.rst
+++ b/Documentation/process/changes.rst
@@ -60,6 +60,7 @@ openssl & libcrypto    1.0.0            openssl version
 bc                     1.06.95          bc --version
 Sphinx\ [#f1]_         1.7              sphinx-build --version
 cpio                   any              cpio --version
+GNU tar                1.28             tar --version
 gtags (optional)       6.6.5            gtags --version
 ====================== ===============  ========================================
 
@@ -175,6 +176,12 @@ You will need openssl to build kernels 3.7 and higher if module signing is
 enabled.  You will also need openssl development packages to build kernels 4.3
 and higher.
 
+Tar
+---
+
+GNU tar is needed if you want to enable access to the kernel headers via sysfs
+(CONFIG_IKHEADERS).
+
 gtags / GNU GLOBAL (optional)
 -----------------------------
 
-- 
2.39.2


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH 1/2] Revert "kheaders: substituting --sort in archive creation"
  2023-05-21 13:23 [PATCH 1/2] Revert "kheaders: substituting --sort in archive creation" Masahiro Yamada
  2023-05-21 13:23 ` [PATCH 2/2] doc: Add tar requirement to changes.rst Masahiro Yamada
@ 2023-05-24 20:10 ` Nicolas Schier
  1 sibling, 0 replies; 6+ messages in thread
From: Nicolas Schier @ 2023-05-24 20:10 UTC (permalink / raw)
  To: Masahiro Yamada; +Cc: linux-kbuild, linux-kernel

[-- Attachment #1: Type: text/plain, Size: 1829 bytes --]

On Sun 21 May 2023 22:23:35 GMT, Masahiro Yamada wrote:
> This reverts commit 700dea5a0bea9f64eba89fae7cb2540326fdfdc1.
> 
> The reason for that commit was --sort=ORDER introduced in
> tar 1.28 (2014). More than 3 years have passed since then.
> 
> Requiring GNU tar 1.28 should be fine now because we require
> GCC 5.1 (2015).
> 
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---

Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>


> 
>  kernel/gen_kheaders.sh | 9 +++------
>  1 file changed, 3 insertions(+), 6 deletions(-)
> 
> diff --git a/kernel/gen_kheaders.sh b/kernel/gen_kheaders.sh
> index 1ef9a87511f5..6d443ea22bb7 100755
> --- a/kernel/gen_kheaders.sh
> +++ b/kernel/gen_kheaders.sh
> @@ -83,12 +83,9 @@ find $cpio_dir -type f -print0 |
>  	xargs -0 -P8 -n1 perl -pi -e 'BEGIN {undef $/;}; s/\/\*((?!SPDX).)*?\*\///smg;'
>  
>  # Create archive and try to normalize metadata for reproducibility.
> -# For compatibility with older versions of tar, files are fed to tar
> -# pre-sorted, as --sort=name might not be available.
> -find $cpio_dir -printf "./%P\n" | LC_ALL=C sort | \
> -    tar "${KBUILD_BUILD_TIMESTAMP:+--mtime=$KBUILD_BUILD_TIMESTAMP}" \
> -    --owner=0 --group=0 --numeric-owner --no-recursion \
> -    -I $XZ -cf $tarfile -C $cpio_dir/ -T - > /dev/null
> +tar "${KBUILD_BUILD_TIMESTAMP:+--mtime=$KBUILD_BUILD_TIMESTAMP}" \
> +    --owner=0 --group=0 --sort=name --numeric-owner \
> +    -I $XZ -cf $tarfile -C $cpio_dir/ . > /dev/null
>  
>  echo $headers_md5 > kernel/kheaders.md5
>  echo "$this_file_md5" >> kernel/kheaders.md5
> -- 
> 2.39.2

-- 
Nicolas Schier
 
epost|xmpp: nicolas@fjasle.eu          irc://oftc.net/nsc
↳ gpg: 18ed 52db e34f 860e e9fb  c82b 7d97 0932 55a0 ce7f
     -- frykten for herren er opphav til kunnskap --

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/2] doc: Add tar requirement to changes.rst
  2023-05-21 13:23 ` [PATCH 2/2] doc: Add tar requirement to changes.rst Masahiro Yamada
@ 2023-05-24 20:12   ` Nicolas Schier
  2023-05-28  7:15     ` Masahiro Yamada
  0 siblings, 1 reply; 6+ messages in thread
From: Nicolas Schier @ 2023-05-24 20:12 UTC (permalink / raw)
  To: Masahiro Yamada; +Cc: linux-kbuild, linux-kernel, Jonathan Corbet, linux-doc

[-- Attachment #1: Type: text/plain, Size: 1805 bytes --]

On Sun 21 May 2023 22:23:36 GMT, Masahiro Yamada wrote:
> tar is used to build the kernel with CONFIG_IKHEADERS.
> 
> GNU tar 1.28 or later is required.
> 
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
> 
>  Documentation/process/changes.rst | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
> index a9ef00509c9b..3c0074214d75 100644
> --- a/Documentation/process/changes.rst
> +++ b/Documentation/process/changes.rst
> @@ -60,6 +60,7 @@ openssl & libcrypto    1.0.0            openssl version
>  bc                     1.06.95          bc --version
>  Sphinx\ [#f1]_         1.7              sphinx-build --version
>  cpio                   any              cpio --version
> +GNU tar                1.28             tar --version
>  gtags (optional)       6.6.5            gtags --version
>  ====================== ===============  ========================================
>  
> @@ -175,6 +176,12 @@ You will need openssl to build kernels 3.7 and higher if module signing is
>  enabled.  You will also need openssl development packages to build kernels 4.3
>  and higher.
>  
> +Tar
> +---
> +
> +GNU tar is needed if you want to enable access to the kernel headers via sysfs
> +(CONFIG_IKHEADERS).

CONFIG_IKHEADERS does also require 'xz' (cp. kernel/gen_kheaders.sh), 
should it be mentioned in changes.rst as well?

Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>


> +
>  gtags / GNU GLOBAL (optional)
>  -----------------------------
>  
> -- 
> 2.39.2

-- 
Nicolas Schier
 
epost|xmpp: nicolas@fjasle.eu          irc://oftc.net/nsc
↳ gpg: 18ed 52db e34f 860e e9fb  c82b 7d97 0932 55a0 ce7f
     -- frykten for herren er opphav til kunnskap --

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/2] doc: Add tar requirement to changes.rst
  2023-05-24 20:12   ` Nicolas Schier
@ 2023-05-28  7:15     ` Masahiro Yamada
  2023-05-30 18:54       ` Nicolas Schier
  0 siblings, 1 reply; 6+ messages in thread
From: Masahiro Yamada @ 2023-05-28  7:15 UTC (permalink / raw)
  To: Nicolas Schier; +Cc: linux-kbuild, linux-kernel, Jonathan Corbet, linux-doc

On Thu, May 25, 2023 at 5:13 AM Nicolas Schier <nicolas@fjasle.eu> wrote:
>
> On Sun 21 May 2023 22:23:36 GMT, Masahiro Yamada wrote:
> > tar is used to build the kernel with CONFIG_IKHEADERS.
> >
> > GNU tar 1.28 or later is required.
> >
> > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > ---
> >
> >  Documentation/process/changes.rst | 7 +++++++
> >  1 file changed, 7 insertions(+)
> >
> > diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
> > index a9ef00509c9b..3c0074214d75 100644
> > --- a/Documentation/process/changes.rst
> > +++ b/Documentation/process/changes.rst
> > @@ -60,6 +60,7 @@ openssl & libcrypto    1.0.0            openssl version
> >  bc                     1.06.95          bc --version
> >  Sphinx\ [#f1]_         1.7              sphinx-build --version
> >  cpio                   any              cpio --version
> > +GNU tar                1.28             tar --version
> >  gtags (optional)       6.6.5            gtags --version
> >  ====================== ===============  ========================================
> >
> > @@ -175,6 +176,12 @@ You will need openssl to build kernels 3.7 and higher if module signing is
> >  enabled.  You will also need openssl development packages to build kernels 4.3
> >  and higher.
> >
> > +Tar
> > +---
> > +
> > +GNU tar is needed if you want to enable access to the kernel headers via sysfs
> > +(CONFIG_IKHEADERS).
>
> CONFIG_IKHEADERS does also require 'xz' (cp. kernel/gen_kheaders.sh),
> should it be mentioned in changes.rst as well?


It is true, bue 'xz' is required in other situations too.

For example,
CONFIG_KERNEL_XZ
CONFIG_MODULE_COMPRESS_XZ
CONFIG_INITRAMFS_COMPRESSION_XZ


If we document the requirement for 'xz',
we need to document the requirement for
'gzip', 'zstd', 'lzma', etc. for the same reason.

So, I want to go only with 'tar' in this series.






> Reviewed-by: Nicolas Schier <nicolas@fjasle.eu>
>
>
> > +
> >  gtags / GNU GLOBAL (optional)
> >  -----------------------------
> >
> > --
> > 2.39.2
>
> --
> Nicolas Schier
>
> epost|xmpp: nicolas@fjasle.eu          irc://oftc.net/nsc
> ↳ gpg: 18ed 52db e34f 860e e9fb  c82b 7d97 0932 55a0 ce7f
>      -- frykten for herren er opphav til kunnskap --



-- 
Best Regards
Masahiro Yamada

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH 2/2] doc: Add tar requirement to changes.rst
  2023-05-28  7:15     ` Masahiro Yamada
@ 2023-05-30 18:54       ` Nicolas Schier
  0 siblings, 0 replies; 6+ messages in thread
From: Nicolas Schier @ 2023-05-30 18:54 UTC (permalink / raw)
  To: Masahiro Yamada; +Cc: linux-kbuild, linux-kernel, Jonathan Corbet, linux-doc

[-- Attachment #1: Type: text/plain, Size: 2160 bytes --]

On Sun 28 May 2023 16:15:02 GMT, Masahiro Yamada wrote:
> On Thu, May 25, 2023 at 5:13 AM Nicolas Schier <nicolas@fjasle.eu> 
> wrote:
> >
> > On Sun 21 May 2023 22:23:36 GMT, Masahiro Yamada wrote:
> > > tar is used to build the kernel with CONFIG_IKHEADERS.
> > >
> > > GNU tar 1.28 or later is required.
> > >
> > > Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> > > ---
> > >
> > >  Documentation/process/changes.rst | 7 +++++++
> > >  1 file changed, 7 insertions(+)
> > >
> > > diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
> > > index a9ef00509c9b..3c0074214d75 100644
> > > --- a/Documentation/process/changes.rst
> > > +++ b/Documentation/process/changes.rst
> > > @@ -60,6 +60,7 @@ openssl & libcrypto    1.0.0            openssl version
> > >  bc                     1.06.95          bc --version
> > >  Sphinx\ [#f1]_         1.7              sphinx-build --version
> > >  cpio                   any              cpio --version
> > > +GNU tar                1.28             tar --version
> > >  gtags (optional)       6.6.5            gtags --version
> > >  ====================== ===============  ========================================
> > >
> > > @@ -175,6 +176,12 @@ You will need openssl to build kernels 3.7 and higher if module signing is
> > >  enabled.  You will also need openssl development packages to build kernels 4.3
> > >  and higher.
> > >
> > > +Tar
> > > +---
> > > +
> > > +GNU tar is needed if you want to enable access to the kernel headers via sysfs
> > > +(CONFIG_IKHEADERS).
> >
> > CONFIG_IKHEADERS does also require 'xz' (cp. kernel/gen_kheaders.sh),
> > should it be mentioned in changes.rst as well?
> 
> 
> It is true, bue 'xz' is required in other situations too.
> 
> For example,
> CONFIG_KERNEL_XZ
> CONFIG_MODULE_COMPRESS_XZ
> CONFIG_INITRAMFS_COMPRESSION_XZ
> 
> 
> If we document the requirement for 'xz',
> we need to document the requirement for
> 'gzip', 'zstd', 'lzma', etc. for the same reason.
> 
> So, I want to go only with 'tar' in this series.

yes, sounds reasonable.

Kind regards,
Nicolas

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2023-05-30 19:01 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-21 13:23 [PATCH 1/2] Revert "kheaders: substituting --sort in archive creation" Masahiro Yamada
2023-05-21 13:23 ` [PATCH 2/2] doc: Add tar requirement to changes.rst Masahiro Yamada
2023-05-24 20:12   ` Nicolas Schier
2023-05-28  7:15     ` Masahiro Yamada
2023-05-30 18:54       ` Nicolas Schier
2023-05-24 20:10 ` [PATCH 1/2] Revert "kheaders: substituting --sort in archive creation" Nicolas Schier

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.