On Mon, Dec 06, 2021 at 11:52:09AM -0800, Nick Desaulniers wrote: > On Mon, Dec 6, 2021 at 8:14 AM Greg Kroah-Hartman > <gregkh@xxxxxxxxxxxxxxxxxxx> wrote: > > > > On Mon, Dec 06, 2021 at 04:56:32PM +0100, Miguel Ojeda wrote: > > > On Mon, Dec 6, 2021 at 4:46 PM Greg Kroah-Hartman > > > <gregkh@xxxxxxxxxxxxxxxxxxx> wrote: > > > > > > > > That should be in a .h file somewhere. Remember, don't put #ifdef in .c > > > > files please. > > Why not put #ifdef in .c files? > > > > Will do, thanks for reviewing! > > > > > > > Same here, this should not be needed if you put it in a .h file > > > > correctly. > > I guess IS_ENABLED could be used in the .c code, but I don't see how > they could move the dispatch to rust_fmt_argument to a header without > moving the definition of pointer() to a header, which they probably > _cant_ do because it's noinline_for_stack. In the header file, you put: #ifdef CONFIG_FOO int foo(void); #else static inline int foo(void) { } #endif and then in your .c file, you call foo() unconditionally, and everything works beautifully.