Re: [PATCH 09/11] NFC: pn533: use nfc_alloc_recv_skb for skb allocation

From: Samuel Ortiz
Date: Sun May 01 2016 - 19:17:49 EST


Hi Michael,

On Thu, Apr 21, 2016 at 04:43:57PM +0200, Michael Thalmeier wrote:
> When multiple receive frames need to be put together in pn533_build_response
> we need to use nfc_alloc_recv_skb instead of the normal alloc_skb. Otherwise
> the nfc core causes an skb error when it tries to push the status byte in
> front of the data.
>
> Signed-off-by: Michael Thalmeier <michael.thalmeier@xxxxxxx>
> ---
> drivers/nfc/pn533/pn533.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/nfc/pn533/pn533.c b/drivers/nfc/pn533/pn533.c
> index c06d22f..ae13277 100644
> --- a/drivers/nfc/pn533/pn533.c
> +++ b/drivers/nfc/pn533/pn533.c
> @@ -1942,7 +1942,7 @@ static struct sk_buff *pn533_build_response(struct pn533 *dev)
> dev_dbg(dev->dev, "%s total length %d\n",
> __func__, skb_len);
>
> - skb = alloc_skb(skb_len, GFP_KERNEL);
> + skb = nfc_alloc_recv_skb(skb_len, GFP_KERNEL);
That looks reasonable. What surprises me is that I'm pretty sure this
got tested (MI bit set on the Rx path)...
Do you get the error from rawsock_add_header() ?

Cheers,
Samuel.