Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1635995
| From | Jim Baxter <jim_baxter@mentor.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH V1 0/1] net: cdc_ncm: Fix TX zero padding |
| Date | 2017-05-04 21:50 +0200 |
| Message-ID | <tDuVc-7WB-15@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
Analysis
--------
The zero padding that is added to NTB's does not zero
the memory correctly.
This happens because the skb_put called within the memset in
the line:
memset(skb_put(skb_out, ctx->tx_max - skb_out->len),
0, ctx->tx_max - skb_out->len);
causes the value of skb_out->len to be modified during
the two uses of it within the above line.
This causes non-zeroed data at the end of skb_out.
This issue was found when connecting between an ARM
Sabre SD Host platform and a test box that was
dropping the NDP's due to the non zeroed memory being
identified as an error.
Solution
--------
To resolve this I have cached the value of
ctx->tx_max - skb_out->len before the memset operation.
Jim Baxter (1):
net: cdc_ncm: Fix TX zero padding
drivers/net/usb/cdc_ncm.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
--
1.9.1
Back to linux.kernel | Previous | Next | Find similar | Unroll thread
[PATCH V1 0/1] net: cdc_ncm: Fix TX zero padding Jim Baxter <jim_baxter@mentor.com> - 2017-05-04 21:50 +0200
csiph-web