Skip to contentSkip to conversation

FAILED: patch "[PATCH] dmaengine: loongson2-apb: Change GENMASK to GENMASK_ULL" failed to apply to 6.12-stable tree

PATCH In review [email protected] 3 participants 5 messages Dec 27, 2024 – Dec 30, 2024

Subsystems (2)
lore
Share & tools
lore

[email protected]

author maintainer
#0 lore raw

The patch below does not apply to the 6.12-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

To reproduce the conflict and resubmit, you may use the following commands:

git fetch https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/ linux-6.12.y
git checkout FETCH_HEAD
git cherry-pick -x 4b65d5322e1d8994acfdb9b867aa00bdb30d177b
# <resolve conflicts, build, test, etc.>
git commit -s
git send-email --to '<[email protected]>' --in-reply-to '2024122721-badge-research-e542@gregkh' --subject-prefix 'PATCH 6.12.y' HEAD^..

Possible dependencies:

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

From 4b65d5322e1d8994acfdb9b867aa00bdb30d177b Mon Sep 17 00:00:00 2001
From: Binbin Zhou <[email protected]>
Date: Mon, 28 Oct 2024 17:34:13 +0800
Subject: [PATCH] dmaengine: loongson2-apb: Change GENMASK to GENMASK_ULL

Fix the following smatch static checker warning:

drivers/dma/loongson2-apb-dma.c:189 ls2x_dma_write_cmd()
warn: was expecting a 64 bit value instead of '~(((0)) + (((~((0))) - (((1)) << (0)) + 1) & (~((0)) >> ((8 * 4) - 1 - (4)))))'

The GENMASK macro used "unsigned long", which caused build issues when using a 32-bit toolchain because it would try to access bits > 31. This patch switches GENMASK to GENMASK_ULL, which uses "unsigned long long".

Fixes 71e7d3cb6e55 ("dmaengine: ls2x-apb: New driver for the Loongson LS2X APB DMA controller")
drivers/dma/loongson2-apb-dma.c +1 -1
index 367ed34ce4da..c528f02b9f84 100644
@@ -31,7 +31,7 @@
 #define LDMA_ASK_VALID		BIT(2)
 #define LDMA_START		BIT(3) /* DMA start operation */
 #define LDMA_STOP		BIT(4) /* DMA stop operation */
-#define LDMA_CONFIG_MASK	GENMASK(4, 0) /* DMA controller config bits mask */
+#define LDMA_CONFIG_MASK	GENMASK_ULL(4, 0) /* DMA controller config bits mask */
 
 /* Bitfields in ndesc_addr field of HW descriptor */
 #define LDMA_DESC_EN		BIT(0) /*1: The next descriptor is valid */
#1 lore raw

PATCH 1/1 dmaengine: loongson2-apb: Change GENMASK to GENMASK_ULL

Fix the following smatch static checker warning:

drivers/dma/loongson2-apb-dma.c:189 ls2x_dma_write_cmd()
warn: was expecting a 64 bit value instead of '~(((0)) + (((~((0))) - (((1)) << (0)) + 1) & (~((0)) >> ((8 * 4) - 1 - (4)))))'

The GENMASK macro used "unsigned long", which caused build issues when using a 32-bit toolchain because it would try to access bits > 31. This patch switches GENMASK to GENMASK_ULL, which uses "unsigned long long".

Fixes 71e7d3cb6e55 ("dmaengine: ls2x-apb: New driver for the Loongson LS2X APB DMA controller")
(cherry picked from commit 4b65d5322e1d8994acfdb9b867aa00bdb30d177b)
---
 drivers/dma/ls2x-apb-dma.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/dma/ls2x-apb-dma.c +1 -1
index 9652e8666722..b4f18be62945 100644
@@ -31,7 +31,7 @@
 #define LDMA_ASK_VALID		BIT(2)
 #define LDMA_START		BIT(3) /* DMA start operation */
 #define LDMA_STOP		BIT(4) /* DMA stop operation */
-#define LDMA_CONFIG_MASK	GENMASK(4, 0) /* DMA controller config bits mask */
+#define LDMA_CONFIG_MASK	GENMASK_ULL(4, 0) /* DMA controller config bits mask */
 
 /* Bitfields in ndesc_addr field of HW descriptor */
 #define LDMA_DESC_EN		BIT(0) /*1: The next descriptor is valid */
Signature · 1 line
2.43.5
maintainer
#2 lore raw

Re: [PATCH 6.12.y] dmaengine: loongson2-apb: Change GENMASK to GENMASK_ULL

[ Sasha's backport helper bot ]

Hi,

Found matching upstream commit: 4b65d5322e1d8994acfdb9b867aa00bdb30d177b

Status in newer kernel trees:
6.12.y | Not found

Note: The patch differs from the upstream commit:
---
1: 4b65d5322e1d ! 1: c2210939eb07 dmaengine: loongson2-apb: Change GENMASK to GENMASK_ULL
@@ Commit message

+ (cherry picked from commit 4b65d5322e1d8994acfdb9b867aa00bdb30d177b)

- ## drivers/dma/loongson2-apb-dma.c ##
+ ## drivers/dma/ls2x-apb-dma.c ##
@@
#define LDMA_ASK_VALID BIT(2)
#define LDMA_START BIT(3) /* DMA start operation */
---

Results of testing on various branches:

| Branch                    | Patch Apply | Build Test |
|---------------------------|-------------|------------|
| stable/linux-6.12.y       |  Success    |  Success   |
maintainer
#3 lore raw

Re: [PATCH 6.12.y] dmaengine: loongson2-apb: Change GENMASK to GENMASK_ULL

In reply to Binbin Zhou
Quoted 9 lines · Binbin Zhou

Fix the following smatch static checker warning:

drivers/dma/loongson2-apb-dma.c:189 ls2x_dma_write_cmd()
warn: was expecting a 64 bit value instead of '~(((0)) + (((~((0))) - (((1)) << (0)) + 1) & (~((0)) >> ((8 * 4) - 1 - (4)))))'

The GENMASK macro used "unsigned long", which caused build issues when using a 32-bit toolchain because it would try to access bits > 31. This patch switches GENMASK to GENMASK_ULL, which uses "unsigned long long".

Quoted 7 lines
Fixes 71e7d3cb6e55 ("dmaengine: ls2x-apb: New driver for the Loongson LS2X APB DMA controller")
(cherry picked from commit 4b65d5322e1d8994acfdb9b867aa00bdb30d177b)

I'll queue it up, but please read
https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html#option-3

Signature · 2 lines
Thanks,
Sasha
#4 lore raw

Re: Re: [PATCH 6.12.y] dmaengine: loongson2-apb: Change GENMASK to GENMASK_ULL

Quoted 28 lines

-----原始邮件-----
发件人: "Sasha Levin" <[email protected]>
发送时间:2024-12-30 11:18:48 (星期一)
收件人: "Binbin Zhou" <[email protected]>
抄送: [email protected], "Dan Carpenter" <[email protected]>, "Vinod Koul" <[email protected]> 主题: Re: [PATCH 6.12.y] dmaengine: loongson2-apb: Change GENMASK to GENMASK_ULL

Quoted 9 lines · Binbin Zhou

Fix the following smatch static checker warning:

drivers/dma/loongson2-apb-dma.c:189 ls2x_dma_write_cmd()
warn: was expecting a 64 bit value instead of '~(((0)) + (((~((0))) - (((1)) << (0)) + 1) & (~((0)) >> ((8 * 4) - 1 - (4)))))'

The GENMASK macro used "unsigned long", which caused build issues when using a 32-bit toolchain because it would try to access bits > 31. This patch switches GENMASK to GENMASK_ULL, which uses "unsigned long long".

Quoted 7 lines
Fixes 71e7d3cb6e55 ("dmaengine: ls2x-apb: New driver for the Loongson LS2X APB DMA controller")
(cherry picked from commit 4b65d5322e1d8994acfdb9b867aa00bdb30d177b)
Quoted 3 lines

I'll queue it up, but please read
https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html#option-3

Hi Sasha:

Thanks for the heads up.
I apologize for my irregularity, although this is the first time I've submitted a patch to stable tree. And I will read the documentation about this part carefully.

Thanks.
Binbin

Quoted 3 lines
Signature · 2 lines
Thanks,
Sasha

本邮件及其附件含有龙芯中科的商业秘密信息,仅限于发送给上面地址中列出的个人或群组。禁止任何其他人以任何形式使用(包括但不限于全部或部分地泄露、复制或散发)本邮件及其附件中的信息。如果您错收本邮件,请您立即电话或邮件通知发件人并删除本邮件。
This email and its attachments contain confidential information from Loongson Technology , which is intended only for the person or entity whose address is listed above. Any use of the information contained herein in any way (including, but not limited to, total or partial disclosure, reproduction or dissemination) by persons other than the intended recipient(s) is prohibited. If you receive this email in error, please notify the sender by phone or email immediately and delete it.