Re: [PATCH] usb: core: Do not use sizeof on pointer type

2016-04-22 Thread Bjørn Mork
Vaishali Thakkar  writes:

> When sizeof is applied to a pointer typed expression, it gives
> the size of the pointer. So, do not use sizeof on pointer type.

What if the intended result was the size of the pointer?

> Problem found using Coccinelle.

Yes, sure.  But you cannot just blindly apply the result without reading
and understanding the code.


Bjørn


Re: [PATCH] usb: core: Do not use sizeof on pointer type

2016-04-22 Thread Bjørn Mork
Vaishali Thakkar  writes:

> When sizeof is applied to a pointer typed expression, it gives
> the size of the pointer. So, do not use sizeof on pointer type.

What if the intended result was the size of the pointer?

> Problem found using Coccinelle.

Yes, sure.  But you cannot just blindly apply the result without reading
and understanding the code.


Bjørn


Re: [PATCH] usb: core: Do not use sizeof on pointer type

2016-04-22 Thread Clemens Ladisch
Vaishali Thakkar wrote:
> When sizeof is applied to a pointer typed expression, it gives
> the size of the pointer.

And why would that be wrong in this case?

> +++ b/drivers/usb/core/hcd.c
> @@ -1386,7 +1386,7 @@ static int hcd_alloc_coherent(struct usb_bus *bus,
>   return -EFAULT;
>   }
>
> - vaddr = hcd_buffer_alloc(bus, size + sizeof(vaddr),
> + vaddr = hcd_buffer_alloc(bus, size + sizeof(*vaddr),
>mem_flags, dma_handle);
>   if (!vaddr)
>   return -ENOMEM;
>

Please note the following comment:

/*
 * Store the virtual address of the buffer at the end
 * of the allocated dma buffer. [...]


Regards,
Clemens


Re: [PATCH] usb: core: Do not use sizeof on pointer type

2016-04-22 Thread Clemens Ladisch
Vaishali Thakkar wrote:
> When sizeof is applied to a pointer typed expression, it gives
> the size of the pointer.

And why would that be wrong in this case?

> +++ b/drivers/usb/core/hcd.c
> @@ -1386,7 +1386,7 @@ static int hcd_alloc_coherent(struct usb_bus *bus,
>   return -EFAULT;
>   }
>
> - vaddr = hcd_buffer_alloc(bus, size + sizeof(vaddr),
> + vaddr = hcd_buffer_alloc(bus, size + sizeof(*vaddr),
>mem_flags, dma_handle);
>   if (!vaddr)
>   return -ENOMEM;
>

Please note the following comment:

/*
 * Store the virtual address of the buffer at the end
 * of the allocated dma buffer. [...]


Regards,
Clemens


[PATCH] usb: core: Do not use sizeof on pointer type

2016-04-21 Thread Vaishali Thakkar
When sizeof is applied to a pointer typed expression, it gives
the size of the pointer. So, do not use sizeof on pointer type.

Problem found using Coccinelle.

Signed-off-by: Vaishali Thakkar 
---
 drivers/usb/core/hcd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
index 2ca2cef..2aa352d 100644
--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
@@ -1386,7 +1386,7 @@ static int hcd_alloc_coherent(struct usb_bus *bus,
return -EFAULT;
}
 
-   vaddr = hcd_buffer_alloc(bus, size + sizeof(vaddr),
+   vaddr = hcd_buffer_alloc(bus, size + sizeof(*vaddr),
 mem_flags, dma_handle);
if (!vaddr)
return -ENOMEM;
-- 
2.1.4



[PATCH] usb: core: Do not use sizeof on pointer type

2016-04-21 Thread Vaishali Thakkar
When sizeof is applied to a pointer typed expression, it gives
the size of the pointer. So, do not use sizeof on pointer type.

Problem found using Coccinelle.

Signed-off-by: Vaishali Thakkar 
---
 drivers/usb/core/hcd.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/core/hcd.c b/drivers/usb/core/hcd.c
index 2ca2cef..2aa352d 100644
--- a/drivers/usb/core/hcd.c
+++ b/drivers/usb/core/hcd.c
@@ -1386,7 +1386,7 @@ static int hcd_alloc_coherent(struct usb_bus *bus,
return -EFAULT;
}
 
-   vaddr = hcd_buffer_alloc(bus, size + sizeof(vaddr),
+   vaddr = hcd_buffer_alloc(bus, size + sizeof(*vaddr),
 mem_flags, dma_handle);
if (!vaddr)
return -ENOMEM;
-- 
2.1.4