* [PATCH] net: hns3: make array spec_opcode static const, makes object smaller
@ 2021-08-19 11:58 Colin King
2021-08-19 12:30 ` patchwork-bot+netdevbpf
0 siblings, 1 reply; 4+ messages in thread
From: Colin King @ 2021-08-19 11:58 UTC (permalink / raw)
To: Yisen Zhuang, Salil Mehta, David S . Miller, Jakub Kicinski,
Huazhong Tan, netdev
Cc: kernel-janitors, linux-kernel
From: Colin Ian King <colin.king@canonical.com>
Don't populate the array spec_opcode on the stack but instead it
static const. Makes the object code smaller by 158 bytes:
Before:
text data bss dec hex filename
12271 3976 128 16375 3ff7 .../hisilicon/hns3/hns3pf/hclge_cmd.o
After:
text data bss dec hex filename
12017 4072 128 16217 3f59 .../hisilicon/hns3/hns3pf/hclge_cmd.o
(gcc version 10.3.0)
Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
.../hisilicon/hns3/hns3pf/hclge_cmd.c | 24 ++++++++++---------
1 file changed, 13 insertions(+), 11 deletions(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.c b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.c
index 887297e37cf3..13042f1cac6f 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3pf/hclge_cmd.c
@@ -169,17 +169,19 @@ static bool hclge_is_special_opcode(u16 opcode)
/* these commands have several descriptors,
* and use the first one to save opcode and return value
*/
- u16 spec_opcode[] = {HCLGE_OPC_STATS_64_BIT,
- HCLGE_OPC_STATS_32_BIT,
- HCLGE_OPC_STATS_MAC,
- HCLGE_OPC_STATS_MAC_ALL,
- HCLGE_OPC_QUERY_32_BIT_REG,
- HCLGE_OPC_QUERY_64_BIT_REG,
- HCLGE_QUERY_CLEAR_MPF_RAS_INT,
- HCLGE_QUERY_CLEAR_PF_RAS_INT,
- HCLGE_QUERY_CLEAR_ALL_MPF_MSIX_INT,
- HCLGE_QUERY_CLEAR_ALL_PF_MSIX_INT,
- HCLGE_QUERY_ALL_ERR_INFO};
+ static const u16 spec_opcode[] = {
+ HCLGE_OPC_STATS_64_BIT,
+ HCLGE_OPC_STATS_32_BIT,
+ HCLGE_OPC_STATS_MAC,
+ HCLGE_OPC_STATS_MAC_ALL,
+ HCLGE_OPC_QUERY_32_BIT_REG,
+ HCLGE_OPC_QUERY_64_BIT_REG,
+ HCLGE_QUERY_CLEAR_MPF_RAS_INT,
+ HCLGE_QUERY_CLEAR_PF_RAS_INT,
+ HCLGE_QUERY_CLEAR_ALL_MPF_MSIX_INT,
+ HCLGE_QUERY_CLEAR_ALL_PF_MSIX_INT,
+ HCLGE_QUERY_ALL_ERR_INFO
+ };
int i;
for (i = 0; i < ARRAY_SIZE(spec_opcode); i++) {
--
2.32.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] net: hns3: make array spec_opcode static const, makes object smaller
2021-08-19 11:58 [PATCH] net: hns3: make array spec_opcode static const, makes object smaller Colin King
@ 2021-08-19 12:30 ` patchwork-bot+netdevbpf
0 siblings, 0 replies; 4+ messages in thread
From: patchwork-bot+netdevbpf @ 2021-08-19 12:30 UTC (permalink / raw)
To: Colin King
Cc: yisen.zhuang, salil.mehta, davem, kuba, tanhuazhong, netdev,
kernel-janitors, linux-kernel
Hello:
This patch was applied to netdev/net-next.git (refs/heads/master):
On Thu, 19 Aug 2021 12:58:13 +0100 you wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> Don't populate the array spec_opcode on the stack but instead it
> static const. Makes the object code smaller by 158 bytes:
>
> Before:
> text data bss dec hex filename
> 12271 3976 128 16375 3ff7 .../hisilicon/hns3/hns3pf/hclge_cmd.o
>
> [...]
Here is the summary with links:
- net: hns3: make array spec_opcode static const, makes object smaller
https://git.kernel.org/netdev/net-next/c/0bc277cb8234
You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] net: hns3: make array spec_opcode static const, makes object smaller
2019-09-06 11:28 Colin King
@ 2019-09-07 16:03 ` David Miller
0 siblings, 0 replies; 4+ messages in thread
From: David Miller @ 2019-09-07 16:03 UTC (permalink / raw)
To: colin.king
Cc: yisen.zhuang, salil.mehta, lipeng321, netdev, kernel-janitors,
linux-kernel
From: Colin King <colin.king@canonical.com>
Date: Fri, 6 Sep 2019 12:28:04 +0100
> From: Colin Ian King <colin.king@canonical.com>
>
> Don't populate the array spec_opcode on the stack but instead make it
> static const. Makes the object code smaller by 48 bytes.
>
> Before:
> text data bss dec hex filename
> 6914 1040 128 8082 1f92 hns3/hns3vf/hclgevf_cmd.o
>
> After:
> text data bss dec hex filename
> 6866 1040 128 8034 1f62 hns3/hns3vf/hclgevf_cmd.o
>
> (gcc version 9.2.1, amd64)
>
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
Applied.
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH] net: hns3: make array spec_opcode static const, makes object smaller
@ 2019-09-06 11:28 Colin King
2019-09-07 16:03 ` David Miller
0 siblings, 1 reply; 4+ messages in thread
From: Colin King @ 2019-09-06 11:28 UTC (permalink / raw)
To: Yisen Zhuang, Salil Mehta, David S . Miller, Peng Li, netdev
Cc: kernel-janitors, linux-kernel
From: Colin Ian King <colin.king@canonical.com>
Don't populate the array spec_opcode on the stack but instead make it
static const. Makes the object code smaller by 48 bytes.
Before:
text data bss dec hex filename
6914 1040 128 8082 1f92 hns3/hns3vf/hclgevf_cmd.o
After:
text data bss dec hex filename
6866 1040 128 8034 1f62 hns3/hns3vf/hclgevf_cmd.o
(gcc version 9.2.1, amd64)
Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c b/drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c
index 4c2c9458648f..d5d1cc5d1b6e 100644
--- a/drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c
+++ b/drivers/net/ethernet/hisilicon/hns3/hns3vf/hclgevf_cmd.c
@@ -74,7 +74,7 @@ static bool hclgevf_cmd_csq_done(struct hclgevf_hw *hw)
static bool hclgevf_is_special_opcode(u16 opcode)
{
- u16 spec_opcode[] = {0x30, 0x31, 0x32};
+ static const u16 spec_opcode[] = {0x30, 0x31, 0x32};
int i;
for (i = 0; i < ARRAY_SIZE(spec_opcode); i++) {
--
2.20.1
^ permalink raw reply related [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-08-19 12:30 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-19 11:58 [PATCH] net: hns3: make array spec_opcode static const, makes object smaller Colin King
2021-08-19 12:30 ` patchwork-bot+netdevbpf
-- strict thread matches above, loose matches on Subject: below --
2019-09-06 11:28 Colin King
2019-09-07 16:03 ` David Miller
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).