ath5k: Introduce _ath5k_printk to reduce code/text
Macros can be converted to functions to reduce overall object size. Convert the ATH5K_PRINTK macro to use _ath5k_printk. Allyesconfig size is reduced ~10% $ size drivers/net/wireless/ath/ath5k/built-in.o* text data bss dec hex filename 211557 2032 40672 254261 3e135 drivers/net/wireless/ath/ath5k/built-in.o.new 235412 2032 47296 284740 45844 drivers/net/wireless/ath/ath5k/built-in.o.old Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
516304b0f4
commit
227842d117
|
@ -79,11 +79,12 @@
|
||||||
#define ATH5K_PRINTF(fmt, ...) \
|
#define ATH5K_PRINTF(fmt, ...) \
|
||||||
pr_warn("%s: " fmt, __func__, ##__VA_ARGS__)
|
pr_warn("%s: " fmt, __func__, ##__VA_ARGS__)
|
||||||
|
|
||||||
|
void __printf(3, 4)
|
||||||
|
_ath5k_printk(const struct ath5k_hw *ah, const char *level,
|
||||||
|
const char *fmt, ...);
|
||||||
|
|
||||||
#define ATH5K_PRINTK(_sc, _level, _fmt, ...) \
|
#define ATH5K_PRINTK(_sc, _level, _fmt, ...) \
|
||||||
printk(_level pr_fmt("%s%s" _fmt), \
|
_ath5k_printk(_sc, _level, _fmt, ##__VA_ARGS__)
|
||||||
((_sc) && (_sc)->hw) ? wiphy_name((_sc)->hw->wiphy) : "", \
|
|
||||||
((_sc) && (_sc)->hw) ? ": " : "", \
|
|
||||||
##__VA_ARGS__)
|
|
||||||
|
|
||||||
#define ATH5K_PRINTK_LIMIT(_sc, _level, _fmt, ...) \
|
#define ATH5K_PRINTK_LIMIT(_sc, _level, _fmt, ...) \
|
||||||
do { \
|
do { \
|
||||||
|
|
|
@ -3040,3 +3040,23 @@ ath5k_set_beacon_filter(struct ieee80211_hw *hw, bool enable)
|
||||||
ath5k_hw_set_rx_filter(ah, rfilt);
|
ath5k_hw_set_rx_filter(ah, rfilt);
|
||||||
ah->filter_flags = rfilt;
|
ah->filter_flags = rfilt;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void _ath5k_printk(const struct ath5k_hw *ah, const char *level,
|
||||||
|
const char *fmt, ...)
|
||||||
|
{
|
||||||
|
struct va_format vaf;
|
||||||
|
va_list args;
|
||||||
|
|
||||||
|
va_start(args, fmt);
|
||||||
|
|
||||||
|
vaf.fmt = fmt;
|
||||||
|
vaf.va = &args;
|
||||||
|
|
||||||
|
if (ah && ah->hw)
|
||||||
|
printk("%s" pr_fmt("%s: %pV"),
|
||||||
|
level, wiphy_name(ah->hw->wiphy), &vaf);
|
||||||
|
else
|
||||||
|
printk("%s" pr_fmt("%pV"), level, &vaf);
|
||||||
|
|
||||||
|
va_end(args);
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue