[PATCH] ntb_hw_switchtec: potential shift wrapping bug in switchtec_ntb_init_sndev()

12 views
Skip to first unread message

Dan Carpenter

unread,
Mar 25, 2019, 5:17:48 AM3/25/19
to Kurt Schwemmer, Kelvin Cao, Logan Gunthorpe, Jon Mason, Dave Jiang, Allen Hubbe, linu...@vger.kernel.org, linu...@googlegroups.com, kernel-...@vger.kernel.org
This code triggers a Smatch warning:

drivers/ntb/hw/mscc/ntb_hw_switchtec.c:884 switchtec_ntb_init_sndev()
warn: should '(1 << sndev->peer_partition)' be a 64 bit type?

The "part_map" and "tpart_vec" variables are u64 type so this seems like
a valid warning.

Fixes: 3df54c870f52 ("ntb_hw_switchtec: Allow using Switchtec NTB in multi-partition setups")
Signed-off-by: Dan Carpenter <dan.ca...@oracle.com>
---
drivers/ntb/hw/mscc/ntb_hw_switchtec.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/ntb/hw/mscc/ntb_hw_switchtec.c b/drivers/ntb/hw/mscc/ntb_hw_switchtec.c
index d905d368d28c..26a88731b0cb 100644
--- a/drivers/ntb/hw/mscc/ntb_hw_switchtec.c
+++ b/drivers/ntb/hw/mscc/ntb_hw_switchtec.c
@@ -881,7 +881,7 @@ static int switchtec_ntb_init_sndev(struct switchtec_ntb *sndev)
}

sndev->peer_partition = ffs(tpart_vec) - 1;
- if (!(part_map & (1 << sndev->peer_partition))) {
+ if (!(part_map & (1ULL << sndev->peer_partition))) {
dev_err(&sndev->stdev->dev,
"ntb target partition is not NT partition\n");
return -ENODEV;
--
2.17.1

Logan Gunthorpe

unread,
Mar 25, 2019, 11:49:36 AM3/25/19
to Dan Carpenter, Kurt Schwemmer, Kelvin Cao, Jon Mason, Dave Jiang, Allen Hubbe, linu...@vger.kernel.org, linu...@googlegroups.com, kernel-...@vger.kernel.org
Thanks!

On 2019-03-25 3:17 a.m., Dan Carpenter wrote:
> This code triggers a Smatch warning:
>
> drivers/ntb/hw/mscc/ntb_hw_switchtec.c:884 switchtec_ntb_init_sndev()
> warn: should '(1 << sndev->peer_partition)' be a 64 bit type?
>
> The "part_map" and "tpart_vec" variables are u64 type so this seems like
> a valid warning.
>
> Fixes: 3df54c870f52 ("ntb_hw_switchtec: Allow using Switchtec NTB in multi-partition setups")
> Signed-off-by: Dan Carpenter <dan.ca...@oracle.com>

Reviewed-by: Logan Gunthorpe <log...@deltatee.com>

Jon Mason

unread,
Jun 13, 2019, 9:25:56 AM6/13/19
to Logan Gunthorpe, Dan Carpenter, Kurt Schwemmer, Kelvin Cao, Dave Jiang, Allen Hubbe, linu...@vger.kernel.org, linu...@googlegroups.com, kernel-...@vger.kernel.org
Sorry for the delay. The patch is now in the ntb branch. We've
missed window for 5.2, but it will be in the 5.3 pull request.

Thanks,
Jon

>
> --
> You received this message because you are subscribed to the Google Groups "linux-ntb" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to linux-ntb+...@googlegroups.com.
> To post to this group, send email to linu...@googlegroups.com.
> To view this discussion on the web visit https://groups.google.com/d/msgid/linux-ntb/e2bc8cf0-8e3e-9335-e21b-4a9697e9c0ef%40deltatee.com.
> For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages