On Thu, Jan 24, 2019 at 08:41:03PM +0100, Håkon Bugge wrote: > [as plain text] > > > On 24 Jan 2019, at 19:24, Jason Gunthorpe <jgg@xxxxxxxxxxxx> wrote: > > > > On Thu, Jan 24, 2019 at 03:47:35PM +0100, Håkon Bugge wrote: > > > >> +/* pre-decl to avoid compiler warning */ > >> +void acm_if_iter(struct nl_object *obj, void *_ctx_and_cb); > >> +void acm_if_iter(struct nl_object *obj, void *_ctx_and_cb) > > > > The compiler is telling you to make it a static function > > The signature of this CB is defined by: > > https://www.infradead.org/~tgr/libnl/doc/api/group__cache.html#ga3a0cdf3c64b41a601ee693abea8b9a17 > > > void nl_cache_foreach(struct nl_cache * cache, > void(*)(struct nl_object *, void *) cb, > void *arg > ) That is a function pointer. > Now, or in the future, we might get warnings about signature mismatch. Which won't change either way if you make it static. Jason