On Mon, Jul 1, 2024 at 3:19 PM Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > > On Mon, 2024-07-01 at 15:16 -0700, Rosen Penev wrote: > > On Mon, Jul 1, 2024 at 3:10 PM Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > > > > > > On Mon, 2024-07-01 at 15:07 -0700, Rosen Penev wrote: > > > > > > > > They go away because if the define is found before any header > > > > inclusion, __u64 gets defined to unsigned long long. > > > > > > It *isn't* found before any header inclusion though. > > > > > > For pretty much all of the C files, "iw.h" comes _last_ in the list of > > > included headers. > > Oh I see what you mean. No real idea. However without this patch, I get > > > > event.c: In function 'parse_nan_match': > > OK, well, event.c is one of those cases where indeed most things are > included indirectly via iw.h, so it would actually work ... but most > files don't do that. Maybe lucky that they don't use 64-bit types (yet)? > > > I submitted a similar patch to fio and was advised to move the define > > into the Makefiles. Not too sure how to do that here. > > > > Probably a good idea, just add > > CFLAGS += -D__SANE_USERSPACE_TYPES__ Right. My thinking was to match against the system being built. I guess it doesn't really hurt to just define everywhere. That's what this patch does anyway. > > in the an appropriate place with the others. > > johannes