On Mon, 08 May 2023 13:14:12 +0200, Oswald Buddenhagen wrote: > > On Mon, May 08, 2023 at 09:14:01AM +0200, Takashi Iwai wrote: > > Must those be macros? > > > yes. at least with the additional checks i've added in v2. Hmm, it's not clear why it must be a macro. Isn't it a snd_BUG_ON() and the check itself is non-inlined, right? > > Not only that macro isn't really safe to use for obvious reasons, > > > i don't see anything obviously bad. please be specific. It's a generic problem of a macro; you're referring the arguments that are expanded in multiple times. At least, it could be a static inline? > > the expansion would cost significantly as they are called in many > > places. > > > after i fixed the calls with a non-const register in v2, the code size > increases by less than 400 bytes (with ~95 call sites). i'd say that's > negligible. But it's more. I'd like to know why those have to be expanded inevitably with a macro with that cost, and if any, it should be described. Takashi