linux/debian/patches/features/x86/apple-tb/0029-thunderbolt-Correct-th...

50 lines
1.5 KiB
Diff

From: Himangi Saraogi <himangi774@gmail.com>
Date: Sun, 6 Jul 2014 21:43:42 +0530
Subject: [29/31] thunderbolt: Correct the size argument to devm_kzalloc
Origin: https://git.kernel.org/linus/fc51768ba24077c8148067036e1555a8a978bb99
nhi->rx_rings does not have type as struct tb_ring *, as it is a
double pointer so the elements of the array should have pointer type,
not structure type.
The Coccinelle semantic patch that makes this change is as follows:
// <smpl>
@disable sizeof_type_expr@
type T;
T **x;
@@
x =
<+...sizeof(
- T
+ *x
)...+>
// </smpl>
Signed-off-by: Himangi Saraogi <himangi774@gmail.com>
Acked-by: Julia Lawall <julia.lawall@lip6.fr>
Cc: Andreas Noever <andreas.noever@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
drivers/thunderbolt/nhi.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/thunderbolt/nhi.c b/drivers/thunderbolt/nhi.c
index 2054fbf..ce72f31 100644
--- a/drivers/thunderbolt/nhi.c
+++ b/drivers/thunderbolt/nhi.c
@@ -570,10 +570,10 @@ static int nhi_probe(struct pci_dev *pdev, const struct pci_device_id *id)
INIT_WORK(&nhi->interrupt_work, nhi_interrupt_work);
nhi->tx_rings = devm_kzalloc(&pdev->dev,
- nhi->hop_count * sizeof(struct tb_ring),
+ nhi->hop_count * sizeof(*nhi->tx_rings),
GFP_KERNEL);
nhi->rx_rings = devm_kzalloc(&pdev->dev,
- nhi->hop_count * sizeof(struct tb_ring),
+ nhi->hop_count * sizeof(*nhi->rx_rings),
GFP_KERNEL);
if (!nhi->tx_rings || !nhi->rx_rings)
return -ENOMEM;