Skip to content

Commit

Permalink
net: pxa168_eth: avoid using signed char for bitops
Browse files Browse the repository at this point in the history
Signedness bugs may occur when using signed char for bitops,
depending on if the highest bit is ever used.

Signed-off-by: Antoine Tenart <antoine.tenart@free-electrons.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Antoine Ténart authored and David S. Miller committed Oct 6, 2014
1 parent 5555dfd commit e885439
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions drivers/net/ethernet/marvell/pxa168_eth.c
Original file line number Diff line number Diff line change
Expand Up @@ -634,12 +634,12 @@ static int pxa168_eth_set_mac_address(struct net_device *dev, void *addr)
memcpy(oldMac, dev->dev_addr, ETH_ALEN);
memcpy(dev->dev_addr, sa->sa_data, ETH_ALEN);

mac_h = sa->sa_data[0] << 24;
mac_h |= sa->sa_data[1] << 16;
mac_h |= sa->sa_data[2] << 8;
mac_h |= sa->sa_data[3];
mac_l = sa->sa_data[4] << 8;
mac_l |= sa->sa_data[5];
mac_h = dev->dev_addr[0] << 24;
mac_h |= dev->dev_addr[1] << 16;
mac_h |= dev->dev_addr[2] << 8;
mac_h |= dev->dev_addr[3];
mac_l = dev->dev_addr[4] << 8;
mac_l |= dev->dev_addr[5];
wrl(pep, MAC_ADDR_HIGH, mac_h);
wrl(pep, MAC_ADDR_LOW, mac_l);

Expand Down

0 comments on commit e885439

Please sign in to comment.