linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] kbuild: Enable armthumb BCJ filter for Thumb-2 kernel
@ 2021-11-20  3:42 Jubin Zhong
  2021-11-21 21:37 ` Lasse Collin
  0 siblings, 1 reply; 6+ messages in thread
From: Jubin Zhong @ 2021-11-20  3:42 UTC (permalink / raw)
  To: lasse.collin, akpm; +Cc: wangfangpeng1, liaohua4, zhongjubin, linux-kernel

xz_wrap.sh use $SRCARCH to detect the BCJ filter. However, assigning
arm BCJ filter to Thumb-2 kernel is not optimal. In my case, about 5%
decrease of image size is observed with armthumb BCJ filter:

Test results:
  hardware:      QEMU emulator version 3.1.0
  config:        vexpress_defconfig with THUMB2_KERNEL & KERNEL_XZ on
  arm BCJ:       4029808
  armthumb BCJ:  3827280

Choose armthumb BCJ filter for Thumb-2 kernel to make smaller images.

Signed-off-by: Jubin Zhong <zhongjubin@huawei.com>

----
v1:
https://lore.kernel.org/lkml/1637323647-19988-1-git-send-email-zhongjubin@huawei.com/
---
 lib/decompress_unxz.c | 6 +++++-
 scripts/xz_wrap.sh    | 6 ++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/lib/decompress_unxz.c b/lib/decompress_unxz.c
index 9f4262e..9d9cb48 100644
--- a/lib/decompress_unxz.c
+++ b/lib/decompress_unxz.c
@@ -129,7 +129,11 @@
 #	define XZ_DEC_POWERPC
 #endif
 #ifdef CONFIG_ARM
-#	define XZ_DEC_ARM
+#	ifdef CONFIG_THUMB2_KERNEL
+#		define XZ_DEC_ARMTHUMB
+#	else
+#		define XZ_DEC_ARM
+#	endif
 #endif
 #ifdef CONFIG_IA64
 #	define XZ_DEC_IA64
diff --git a/scripts/xz_wrap.sh b/scripts/xz_wrap.sh
index 76e9cbc..3824fdf 100755
--- a/scripts/xz_wrap.sh
+++ b/scripts/xz_wrap.sh
@@ -9,6 +9,8 @@
 # You can do whatever you want with this file.
 #
 
+. include/config/auto.conf
+
 BCJ=
 LZMA2OPTS=
 
@@ -20,4 +22,8 @@ case $SRCARCH in
 	sparc)          BCJ=--sparc ;;
 esac
 
+if [ -n "${CONFIG_THUMB2_KERNEL}" ]; then
+	BCJ=--armthumb
+fi
+
 exec $XZ --check=crc32 $BCJ --lzma2=$LZMA2OPTS,dict=32MiB
-- 
1.8.5.6


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

* Re: [PATCH v2] kbuild: Enable armthumb BCJ filter for Thumb-2 kernel
  2021-11-20  3:42 [PATCH v2] kbuild: Enable armthumb BCJ filter for Thumb-2 kernel Jubin Zhong
@ 2021-11-21 21:37 ` Lasse Collin
  2022-03-21  3:40   ` Jubin Zhong
  0 siblings, 1 reply; 6+ messages in thread
From: Lasse Collin @ 2021-11-21 21:37 UTC (permalink / raw)
  To: Jubin Zhong; +Cc: akpm, wangfangpeng1, liaohua4, linux-kernel

On 2021-11-20 Jubin Zhong wrote:
> xz_wrap.sh use $SRCARCH to detect the BCJ filter. However, assigning
> arm BCJ filter to Thumb-2 kernel is not optimal. In my case, about 5%
> decrease of image size is observed with armthumb BCJ filter:
> 
> Test results:
>   hardware:      QEMU emulator version 3.1.0
>   config:        vexpress_defconfig with THUMB2_KERNEL & KERNEL_XZ on
>   arm BCJ:       4029808
>   armthumb BCJ:  3827280
> 
> Choose armthumb BCJ filter for Thumb-2 kernel to make smaller images.
> 
> Signed-off-by: Jubin Zhong <zhongjubin@huawei.com>

I still didn't test it but it looks good to me.

Acked-by: Lasse Collin <lasse.collin@tukaani.org>

-- 
Lasse Collin

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

* Re: Re: [PATCH v2] kbuild: Enable armthumb BCJ filter for Thumb-2 kernel
  2021-11-21 21:37 ` Lasse Collin
@ 2022-03-21  3:40   ` Jubin Zhong
  2022-03-26 18:35     ` Lasse Collin
  0 siblings, 1 reply; 6+ messages in thread
From: Jubin Zhong @ 2022-03-21  3:40 UTC (permalink / raw)
  To: lasse.collin; +Cc: akpm, liaohua4, linux-kernel, wangfangpeng1, zhongjubin

>On 2021-11-20 Jubin Zhong wrote:
>> xz_wrap.sh use $SRCARCH to detect the BCJ filter. However, assigning 
>> arm BCJ filter to Thumb-2 kernel is not optimal. In my case, about 5% 
>> decrease of image size is observed with armthumb BCJ filter:
>> 
>> Test results:
>>   hardware:      QEMU emulator version 3.1.0
>>   config:        vexpress_defconfig with THUMB2_KERNEL & KERNEL_XZ on
>>   arm BCJ:       4029808
>>   armthumb BCJ:  3827280
>> 
>> Choose armthumb BCJ filter for Thumb-2 kernel to make smaller images.
>> 
>> Signed-off-by: Jubin Zhong <zhongjubin@huawei.com>

>I still didn't test it but it looks good to me.

Hi, this patch is not accepted into the kernel mainline yet.
Please let me know if there is any problem with the patch, thanks.


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

* Re: [PATCH v2] kbuild: Enable armthumb BCJ filter for Thumb-2 kernel
  2022-03-21  3:40   ` Jubin Zhong
@ 2022-03-26 18:35     ` Lasse Collin
  2022-03-28  2:48       ` [PATCH v2 RESEND] " Jubin Zhong
  0 siblings, 1 reply; 6+ messages in thread
From: Lasse Collin @ 2022-03-26 18:35 UTC (permalink / raw)
  To: Jubin Zhong; +Cc: akpm, liaohua4, linux-kernel, wangfangpeng1

On 2022-03-21 Jubin Zhong wrote:
> >On 2021-11-20 Jubin Zhong wrote:  
> >> xz_wrap.sh use $SRCARCH to detect the BCJ filter. However,
> >> assigning arm BCJ filter to Thumb-2 kernel is not optimal. In my
> >> case, about 5% decrease of image size is observed with armthumb
> >> BCJ filter:
> >> 
> >> Test results:
> >>   hardware:      QEMU emulator version 3.1.0
> >>   config:        vexpress_defconfig with THUMB2_KERNEL & KERNEL_XZ
> >> on
> >>   arm BCJ:       4029808
> >>   armthumb BCJ:  3827280
> >> 
> >> Choose armthumb BCJ filter for Thumb-2 kernel to make smaller
> >> images.
> >> 
> >> Signed-off-by: Jubin Zhong <zhongjubin@huawei.com>  
> 
> >I still didn't test it but it looks good to me.  
> 
> Hi, this patch is not accepted into the kernel mainline yet.
> Please let me know if there is any problem with the patch, thanks.

I see no replies and don't know what could be wrong. So perhaps you
could resend it with my Acked-by.

-- 
Lasse Collin

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

* [PATCH v2 RESEND] kbuild: Enable armthumb BCJ filter for Thumb-2 kernel
  2022-03-26 18:35     ` Lasse Collin
@ 2022-03-28  2:48       ` Jubin Zhong
  2022-04-02  8:35         ` Jubin Zhong
  0 siblings, 1 reply; 6+ messages in thread
From: Jubin Zhong @ 2022-03-28  2:48 UTC (permalink / raw)
  To: lasse.collin, linux
  Cc: akpm, linux-kernel, linux-arm-kernel, liaohua4, wangfangpeng1,
	zhongjubin, nixiaoming

xz_wrap.sh use $SRCARCH to detect the BCJ filter. However, assigning
arm BCJ filter to Thumb-2 kernel is not optimal. In my case, about 5%
decrease of image size is observed with armthumb BCJ filter:

Test results:
  hardware:      QEMU emulator version 3.1.0
  config:        vexpress_defconfig with THUMB2_KERNEL & KERNEL_XZ on
  arm BCJ:       4029808
  armthumb BCJ:  3827280

Choose armthumb BCJ filter for Thumb-2 kernel to make smaller images.

Signed-off-by: Jubin Zhong <zhongjubin@huawei.com>
Acked-by: Lasse Collin <lasse.collin@tukaani.org>

----
v1:
https://lore.kernel.org/lkml/1637323647-19988-1-git-send-email-zhongjubin@huawei.com/
---
 lib/decompress_unxz.c | 6 +++++-
 scripts/xz_wrap.sh    | 6 ++++++
 2 files changed, 11 insertions(+), 1 deletion(-)

diff --git a/lib/decompress_unxz.c b/lib/decompress_unxz.c
index 9f4262e..9d9cb48 100644
--- a/lib/decompress_unxz.c
+++ b/lib/decompress_unxz.c
@@ -129,7 +129,11 @@
 #	define XZ_DEC_POWERPC
 #endif
 #ifdef CONFIG_ARM
-#	define XZ_DEC_ARM
+#	ifdef CONFIG_THUMB2_KERNEL
+#		define XZ_DEC_ARMTHUMB
+#	else
+#		define XZ_DEC_ARM
+#	endif
 #endif
 #ifdef CONFIG_IA64
 #	define XZ_DEC_IA64
diff --git a/scripts/xz_wrap.sh b/scripts/xz_wrap.sh
index 76e9cbc..3824fdf 100755
--- a/scripts/xz_wrap.sh
+++ b/scripts/xz_wrap.sh
@@ -9,6 +9,8 @@
 # You can do whatever you want with this file.
 #
 
+. include/config/auto.conf
+
 BCJ=
 LZMA2OPTS=
 
@@ -20,4 +22,8 @@ case $SRCARCH in
 	sparc)          BCJ=--sparc ;;
 esac
 
+if [ -n "${CONFIG_THUMB2_KERNEL}" ]; then
+	BCJ=--armthumb
+fi
+
 exec $XZ --check=crc32 $BCJ --lzma2=$LZMA2OPTS,dict=32MiB
-- 
1.8.5.6


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

* Re: [PATCH v2 RESEND] kbuild: Enable armthumb BCJ filter for Thumb-2 kernel
  2022-03-28  2:48       ` [PATCH v2 RESEND] " Jubin Zhong
@ 2022-04-02  8:35         ` Jubin Zhong
  0 siblings, 0 replies; 6+ messages in thread
From: Jubin Zhong @ 2022-04-02  8:35 UTC (permalink / raw)
  To: zhongjubin
  Cc: akpm, lasse.collin, liaohua4, linux-arm-kernel, linux-kernel,
	linux, nixiaoming, wangfangpeng1

ping.


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

end of thread, other threads:[~2022-04-02  8:35 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-20  3:42 [PATCH v2] kbuild: Enable armthumb BCJ filter for Thumb-2 kernel Jubin Zhong
2021-11-21 21:37 ` Lasse Collin
2022-03-21  3:40   ` Jubin Zhong
2022-03-26 18:35     ` Lasse Collin
2022-03-28  2:48       ` [PATCH v2 RESEND] " Jubin Zhong
2022-04-02  8:35         ` Jubin Zhong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).