Re: [PATCH] tcp: fix tcp_fastopen unaligned access complaints on sparc

From: Shannon Nelson
Date: Thu Jan 12 2017 - 15:56:03 EST




On 1/12/2017 12:41 PM, David Miller wrote:
From: Shannon Nelson <shannon.nelson@xxxxxxxxxx>
Date: Thu, 12 Jan 2017 12:30:38 -0800

On 1/12/2017 12:25 PM, Eric Dumazet wrote:
On Thu, 2017-01-12 at 13:15 -0700, Rob Gardner wrote:


I suspect that someplace, somebody is casting val to an int * or
something like that.

Then that would be the bug. Can we root cause this please ?



Look in net/ipv4/tcp_fastopen.c:tcp_fastopen_cookie_gen() for the line

struct in6_addr *buf = (struct in6_addr *) tmp.val;

Oh yeah, that's it. I didn't notice that at all.


It looked to me like swapping the data fields would be the easiest and least impactive way to fix this. I didn't want to mess with the logic. I'm certainly open to other suggestions.

sln