diff options
author | Per Ellefsen <Per.Ellefsen@stericsson.com> | 2012-06-24 13:01:37 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-06-26 01:07:22 +0200 |
commit | 3935600a7f341c00b0def2ed8870669ab2c05493 (patch) | |
tree | ccb5454e6d08cc9fbfe4091097de92a2bd66643a /drivers | |
parent | caif: Clear shutdown mask to zero at reconnect. (diff) | |
download | linux-3935600a7f341c00b0def2ed8870669ab2c05493.tar.xz linux-3935600a7f341c00b0def2ed8870669ab2c05493.zip |
caif-hsi: Bugfix - Piggyback'ed embedded CAIF frame lost
When receiving a piggyback'ed descriptor containing an
embedded frame, but no payload, the embedded frame was
lost.
Signed-off-by: Per Ellefsen <per.ellefsen@stericsson.com>
Signed-off-by: Sjur Brændeland <sjur.brandeland@stericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/caif/caif_hsi.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/caif/caif_hsi.c b/drivers/net/caif/caif_hsi.c index 1520814c77c7..1f52ff3076b4 100644 --- a/drivers/net/caif/caif_hsi.c +++ b/drivers/net/caif/caif_hsi.c @@ -693,8 +693,6 @@ static void cfhsi_rx_done(struct cfhsi *cfhsi) */ memcpy(rx_buf, (u8 *)piggy_desc, CFHSI_DESC_SHORT_SZ); - /* Mark no embedded frame here */ - piggy_desc->offset = 0; if (desc_pld_len == -EPROTO) goto out_of_sync; } @@ -737,6 +735,8 @@ static void cfhsi_rx_done(struct cfhsi *cfhsi) /* Extract any payload in piggyback descriptor. */ if (cfhsi_rx_desc(piggy_desc, cfhsi) < 0) goto out_of_sync; + /* Mark no embedded frame after extracting it */ + piggy_desc->offset = 0; } } |