On Thu, Dec 01, 2016 at 07:48:29PM -0600, Larry Finger wrote: > --- wireless-drivers-next.orig/drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtcoutsrc.h > +++ wireless-drivers-next/drivers/net/wireless/realtek/rtlwifi/btcoexist/halbtcoutsrc.h > @@ -27,6 +27,29 @@ > > #include "../wifi.h" > > +#ifdef CONFIG_RTLWIFI_DEBUG > + > +#define BTC_SPRINTF(ptr, ...) snprintf(ptr, ##__VA_ARGS__) > +#define BTC_TRACE(fmt) \ > +do { \ > + struct rtl_priv *rtlpriv = gl_bt_coexist.adapter; \ > + if (!rtlpriv) \ > + break; \ > + RT_TRACE_STRING(rtlpriv, COMP_COEX, DBG_LOUD, fmt); \ > +} while (0) > + This sort of macro is exactly when the rtl drivers spent so long in staging... Subsystems should not invent their own tracing but in particular these macros are so very very ugly. It's just super frustrating to even look at this... There are a lot of staging drivers I feel good about when they leave. The HyperV drivers. The IIO stuff. A lot of the media stuff and generally the media tree is getting better and better. I like comedi and unisys, those are in staging, but they are great and could move out any time as far as I'm concerned. But this patch just makes me super discouraged. What are we doing??? regards, dan carpenter