提交 1100149a 编写于 作者: S Sergei Shtylyov 提交者: David S. Miller

sh_eth: use DIV_ROUND_UP() in sh_eth_soft_swap()

When initializing 'maxp' in sh_eth_soft_swap(), the buffer length needs
to be rounded  up -- that's just asking for DIV_ROUND_UP()!
Signed-off-by: NSergei Shtylyov <sergei.shtylyov@cogentembedded.com>
Reviewed-by: NGeert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 bb2fa4e8
...@@ -464,7 +464,7 @@ static void sh_eth_soft_swap(char *src, int len) ...@@ -464,7 +464,7 @@ static void sh_eth_soft_swap(char *src, int len)
{ {
#ifdef __LITTLE_ENDIAN #ifdef __LITTLE_ENDIAN
u32 *p = (u32 *)src; u32 *p = (u32 *)src;
u32 *maxp = p + ((len + sizeof(u32) - 1) / sizeof(u32)); u32 *maxp = p + DIV_ROUND_UP(len, sizeof(u32));
for (; p < maxp; p++) for (; p < maxp; p++)
*p = swab32(*p); *p = swab32(*p);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册