net: amd-xgbe: Get rid of custom hex_dump_to_buffer()
Subsystems (3)
PATCH 1/1 net: amd-xgbe: Get rid of custom hex_dump_to_buffer()
Get rid of yet another custom hex_dump_to_buffer().
The output is slightly changed, i.e. each byte followed by white space.
Note, we don't use print_hex_dump() here since the original code uses nedev_dbg().
Signed-off-by Andy Shevchenko <[email protected]>
--- drivers/net/ethernet/amd/xgbe/xgbe-drv.c | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-)
drivers/net/ethernet/amd/xgbe/xgbe-drv.c +6 -17
@@ -2930,9 +2930,8 @@ void xgbe_dump_rx_desc(struct xgbe_prv_data *pdata, struct xgbe_ring *ring,void xgbe_print_pkt (struct net_device *netdev,struct sk_buff *skb,bool tx_rx) {struct ethhdr *eth = (struct ethhdr *)skb->data; -unsigned char *buf = skb->data;unsigned char buffer[128 ]; -unsigned int i, j; +unsigned int i;netdev_dbg (netdev,"\n************** SKB dump ****************\n" );
@@ -2943,22 +2942,12 @@ void xgbe_print_pkt(struct net_device *netdev, struct sk_buff *skb, bool tx_rx)netdev_dbg (netdev,"Src MAC addr: %pM\n" , eth->h_source);netdev_dbg (netdev,"Protocol: %#06hx\n" ,ntohs (eth->h_proto)); -for (i =0 , j =0 ; i < skb->len;) { - j +=snprintf (buffer + j,sizeof (buffer) - j,"%02hhx" , - buf[i++]); - -if ((i %32 ) ==0 ) { -netdev_dbg (netdev," %#06x: %s\n" , i -32 , buffer); - j =0 ; - }else if ((i %16 ) ==0 ) { - buffer[j++] =' ' ; - buffer[j++] =' ' ; - }else if ((i %4 ) ==0 ) { - buffer[j++] =' ' ; - } +for (i =0 ; i < skb->len; i +=32 ) { +unsigned int len =min (skb->len - i,32U ); + +hex_dump_to_buffer (&skb->data[i], len,32 ,1 , buffer,128 , false); +netdev_dbg (netdev," %#06x: %s\n" , i, buffer); } -if (i %32 ) -netdev_dbg (netdev," %#06x: %s\n" , i - (i %32 ), buffer);netdev_dbg (netdev,"\n************** SKB dump ****************\n" ); }
Signature · 1 line
2.15.1
Quoted 38 lines · Andy Shevchenko
Get rid of yet another custom
hex_dump_to_buffer().The output is slightly changed, i.e. each byte followed by white space.
Note, we don't use
print_hex_dump()here since the original code usesnedev_dbg().Signed-off-by Andy Shevchenko <[email protected]>--- drivers/net/ethernet/amd/xgbe/xgbe-drv.c | 23 ++++++----------------- 1 file changed, 6 insertions(+), 17 deletions(-)drivers/net/ethernet/amd/xgbe/xgbe-drv.c +1
-9@@ -2930,9 +2930,8 @@ void xgbe_dump_rx_desc(struct xgbe_prv_data *pdata, struct xgbe_ring *ring,void xgbe_print_pkt (struct net_device *netdev,struct sk_buff *skb,bool tx_rx) {struct ethhdr *eth = (struct ethhdr *)skb->data; -unsigned char *buf = skb->data;unsigned char buffer[128 ]; -unsigned int i, j; +unsigned int i;netdev_dbg (netdev,"\n************** SKB dump ****************\n" );@@ -2943,22 +2942,12 @@ void xgbe_print_pkt(struct net_device *netdev, struct sk_buff *skb, bool tx_rx)netdev_dbg (netdev,"Src MAC addr: %pM\n" , eth->h_source);netdev_dbg (netdev,"Protocol: %#06hx\n" ,ntohs (eth->h_proto)); -for (i =0 , j =0 ; i < skb->len;) { - j +=snprintf (buffer + j,sizeof (buffer) - j,"%02hhx" , - buf[i++]); - -if ((i %32 ) ==0 ) { -netdev_dbg (netdev," %#06x: %s\n" , i -32 , buffer); - j =0 ;
drivers/net/ethernet/amd/xgbe/xgbe-drv.c void xgbe_print_pkt(struct net_device *netdev, struct sk_buff *skb, bool tx_rx) · line 2948
Quoted 10 lines
drivers/net/ethernet/amd/xgbe/xgbe-drv.c +4
-6- }else if ((i %16 ) ==0 ) { - buffer[j++] =' ' ; - buffer[j++] =' ' ; - }else if ((i %4 ) ==0 ) { - buffer[j++] =' ' ; - } +for (i =0 ; i < skb->len; i +=32 ) { +unsigned int len =min (skb->len - i,32U ); + +hex_dump_to_buffer (&skb->data[i], len,32 ,1 , buffer,128 , false);
I'd prefer to see sizeof(buffer) vs the hard-coded 128 here. Also, this line exceeds 80 characters, so it should be split.
With those changes:
Acked-by Tom Lendacky <[email protected]>
Quoted 8 lines
drivers/net/ethernet/amd/xgbe/xgbe-drv.c +1
-2+netdev_dbg (netdev," %#06x: %s\n" , i, buffer); } -if (i %32 ) -netdev_dbg (netdev," %#06x: %s\n" , i - (i %32 ), buffer);netdev_dbg (netdev,"\n************** SKB dump ****************\n" ); }