mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-14 09:09:56 +00:00
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, ...) \
|
||||
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, ...) \
|
||||
printk(_level pr_fmt("%s%s" _fmt), \
|
||||
((_sc) && (_sc)->hw) ? wiphy_name((_sc)->hw->wiphy) : "", \
|
||||
((_sc) && (_sc)->hw) ? ": " : "", \
|
||||
##__VA_ARGS__)
|
||||
_ath5k_printk(_sc, _level, _fmt, ##__VA_ARGS__)
|
||||
|
||||
#define ATH5K_PRINTK_LIMIT(_sc, _level, _fmt, ...) \
|
||||
do { \
|
||||
|
@ -3040,3 +3040,23 @@ ath5k_set_beacon_filter(struct ieee80211_hw *hw, bool enable)
|
||||
ath5k_hw_set_rx_filter(ah, 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…
x
Reference in New Issue
Block a user