17.12.2016, 19:43, "Cihangir Akturk" <cakturk@xxxxxxxxx>: > In the actual implementation ether_addr_equal function tests for equality to 0 > when returning. It seems in commit 0d74c4 it is somehow overlooked to change > this operator to reflect the actual function. why this "return" function need to be ==0? I think, u16 functions read memory but "0" is should not be equalty. This way, -for the code to work- memory should be everytime unaligned !=0. > Signed-off-by: Cihangir Akturk <cakturk@xxxxxxxxx> > --- > Documentation/unaligned-memory-access.txt | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/Documentation/unaligned-memory-access.txt b/Documentation/unaligned-memory-access.txt > index a445da0..3f76c0c 100644 > --- a/Documentation/unaligned-memory-access.txt > +++ b/Documentation/unaligned-memory-access.txt > @@ -151,7 +151,7 @@ bool ether_addr_equal(const u8 *addr1, const u8 *addr2) > #else > const u16 *a = (const u16 *)addr1; > const u16 *b = (const u16 *)addr2; > - return ((a[0] ^ b[0]) | (a[1] ^ b[1]) | (a[2] ^ b[2])) != 0; > + return ((a[0] ^ b[0]) | (a[1] ^ b[1]) | (a[2] ^ b[2])) == 0; > #endif > } > > -- > 2.1.4 -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html