Re: [PATCH 5/7] um: Add an internal header shared among the user code

From: Tiwei Bie
Date: Tue Apr 23 2024 - 08:10:06 EST


On 4/23/24 7:30 PM, Johannes Berg wrote:
> On Tue, 2024-04-23 at 19:24 +0800, Tiwei Bie wrote:
>>
>> $(USER_OBJS:.o=.%): \
>> - c_flags = -Wp,-MD,$(depfile) $(USER_CFLAGS) -include $(srctree)/include/linux/kern_levels.h -include user.h $(CFLAGS_$(basetarget).o)
>> + c_flags = -Wp,-MD,$(depfile) $(USER_CFLAGS) -include $(srctree)/include/linux/kern_levels.h \
>> + -include user.h -include $(srctree)/arch/um/os-Linux/internal.h $(CFLAGS_$(basetarget).o)
>>
>
> Why not just include it explicitly?

I think it might be more convenient if we include it implicitly,
especially since there are two levels of directories under os-Linux/.
But I don't have a strong opinion on this. I'm also willing to
include it explicitly.

> We do have the warnings?

Yeah. Without this patch, I can get below warnings with `make ARCH=um defconfig && make ARCH=um`:

arch/um/os-Linux/skas/process.c:107:6: warning: no previous prototype for ‘wait_stub_done’ [-Wmissing-prototypes]
107 | void wait_stub_done(int pid)
| ^~~~~~~~~~~~~~
arch/um/os-Linux/mem.c:213:13: warning: no previous prototype for ‘check_tmpexec’ [-Wmissing-prototypes]
213 | void __init check_tmpexec(void)
| ^~~~~~~~~~~~~

And below warnings with `make ARCH=um SUBARCH=i386 defconfig && make ARCH=um SUBARCH=i386`:

arch/um/os-Linux/elf_aux.c:26:13: warning: no previous prototype for ‘scan_elf_aux’ [-Wmissing-prototypes]
26 | __init void scan_elf_aux( char **envp)
| ^~~~~~~~~~~~
arch/um/os-Linux/skas/process.c:107:6: warning: no previous prototype for ‘wait_stub_done’ [-Wmissing-prototypes]
107 | void wait_stub_done(int pid)
| ^~~~~~~~~~~~~~
arch/um/os-Linux/mem.c:213:13: warning: no previous prototype for ‘check_tmpexec’ [-Wmissing-prototypes]
213 | void __init check_tmpexec(void)
| ^~~~~~~~~~~~~

The compiler I'm using is: gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0

Regards,
Tiwei