diff options
author | David S. Miller <davem@davemloft.net> | 2008-04-08 19:50:44 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-04-08 19:50:44 -0400 |
commit | 21f644f3eabde637f255f75ad05d0821a7a36b7f (patch) | |
tree | 2dc70aade59bf77c2d156b8e2544906128368f87 /drivers/net/starfire.c | |
parent | 6adb4f733e9996b4fd68a6db50dd51bd2463ccac (diff) |
[NET]: Undo code bloat in hot paths due to print_mac().
If print_mac() is used inside of a pr_debug() the compiler
can't see that the call is redundant so still performs it
even of pr_debug() ends up being a nop.
So don't use print_mac() in such cases in hot code paths,
use MAC_FMT et al. instead.
As noted by Joe Perches, pr_debug() could be modified to
handle this better, but that is a change to an interface
used by the entire kernel and thus needs to be validated
carefully. This here is thus the less risky fix for
2.6.25
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/starfire.c')
-rw-r--r-- | drivers/net/starfire.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/drivers/net/starfire.c b/drivers/net/starfire.c index c49214feae9..7b7b1717b0d 100644 --- a/drivers/net/starfire.c +++ b/drivers/net/starfire.c | |||
@@ -1472,13 +1472,12 @@ static int __netdev_rx(struct net_device *dev, int *quota) | |||
1472 | #ifndef final_version /* Remove after testing. */ | 1472 | #ifndef final_version /* Remove after testing. */ |
1473 | /* You will want this info for the initial debug. */ | 1473 | /* You will want this info for the initial debug. */ |
1474 | if (debug > 5) { | 1474 | if (debug > 5) { |
1475 | DECLARE_MAC_BUF(mac); | 1475 | printk(KERN_DEBUG " Rx data " MAC_FMT " " MAC_FMT |
1476 | DECLARE_MAC_BUF(mac2); | ||
1477 | |||
1478 | printk(KERN_DEBUG " Rx data %s %s" | ||
1479 | " %2.2x%2.2x.\n", | 1476 | " %2.2x%2.2x.\n", |
1480 | print_mac(mac, &skb->data[0]), | 1477 | skb->data[0], skb->data[1], skb->data[2], |
1481 | print_mac(mac2, &skb->data[6]), | 1478 | skb->data[3], skb->data[4], skb->data[5], |
1479 | skb->data[6], skb->data[7], skb->data[8], | ||
1480 | skb->data[9], skb->data[10], skb->data[11], | ||
1482 | skb->data[12], skb->data[13]); | 1481 | skb->data[12], skb->data[13]); |
1483 | } | 1482 | } |
1484 | #endif | 1483 | #endif |