20.12.2016, 02:22, "Cihangir Akturk" <cakturk@xxxxxxxxx>: > On Sun, Dec 18, 2016 at 12:52:12AM +0200, Ozgur Karatas wrote: >> 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. > > XOR is true only when inputs differ. That means if inputs are the > same, then it outputs false (0) or whatever you call it. Then we > perform OR operation between those outputs. So if the result is 0 then > addr1 and addr2 is equal. Thanks for this explanation to your patch. In this case the patch mentioned is valid. I checked, turned to "!=0" errors. un-mem.c:29:18: error: ‘!’ (first use in this function) return ((a[0] ^ b[0]) | (a[1] ^ b[1]) | (a[2] ^ b[2])) != 0; ^ Also, don't need to send patch it secon time :) >> This way, -for the code to work- memory should be everytime unaligned !=0. > > Sorry I didn't quite get the point. Regards, ~Ozgur -- 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