2015-09-17 0:57 GMT-04:00 Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>: <SNIP> >> @@ -1748,8 +1755,9 @@ static short rtl8192_usb_initendpoints(struct net_device *dev) >> oldaddr = priv->oldaddr; >> align = ((long)oldaddr) & 3; >> if (align) { >> - newaddr = oldaddr + 4 - align; >> - priv->rx_urb[16]->transfer_buffer_length = 16 - 4 + align; >> + align = 4 - align; >> + newaddr = oldaddr + align; >> + priv->rx_urb[16]->transfer_buffer_length = 16 - align; > > At a quick glance, this conversion looks wrong... What is wrong with it? oldaddr + 4 - align; can also be read: oldaddr + (4 - align); as well as 16 - 4 + align; can also be read 16 - (4 - align); as when we remove the parenthesis, the - sign invert the parenthesis elements signs. Calculating (4 - align) previously thus preserve the logic here! > And it's not what your changelog text said you were doing :( It's true that I didn't add a new temporary variable here but instead re-used one that is not used after, but I thought it went in the same idea as the rest of this patch. Should I separate that as another patch? _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel