Le 30/09/2020 à 22:47, Taylor Simpson a écrit : > > >> -----Original Message----- >> From: Laurent Vivier <laur...@vivier.eu> >> Sent: Monday, September 28, 2020 3:03 PM >> To: Taylor Simpson <tsimp...@quicinc.com>; qemu-devel@nongnu.org >> Cc: richard.hender...@linaro.org; phi...@redhat.com; riku.voi...@iki.fi; >> aleksandar.m.m...@gmail.com; a...@rev.ng >> Subject: Re: [RFC PATCH v4 27/29] Hexagon (linux-user/hexagon) Linux user >> emulation >> >>> + >>> +syscall_nr_generators += { >>> + 'hexagon': generator(sh, >>> + arguments: [ 'cat', 'syscall_nr.h', '>', '@OUTPUT@' >>> ], >>> + output: '@BASENAME@_nr.h') >> >> Why do we need that? >> The syscall_nr_generators is used to generate syscall_nr.h from syscall.tbl > > The other linux-user targets have this in their meson.build files. I'll > remove if it's not needed.
Not all the targets (only the ones with syscall.tbl) and they call syscallhdr.sh and not cat. So you can remove it. >> >>> +} >>> diff --git a/linux-user/meson.build b/linux-user/meson.build >>> index 2b94e4b..8b1dfc8 100644 >>> --- a/linux-user/meson.build >>> +++ b/linux-user/meson.build >>> @@ -22,6 +22,7 @@ syscall_nr_generators = {} >>> >>> subdir('alpha') >>> subdir('arm') >>> +subdir('hexagon') >> >> so you don't need that either > > OK > >>> - grep -e "#define __NR_" -e "#define __NR3264" >>> + grep -e "#define __NR_" -e "#define __NR3264" | grep -v >> __NR_syscalls >> >> Why do you remove __NR_syscalls? > > Older kernels have a bunch of > #undef __NR_syscalls > #define __NR_syscalls X > > The script removes all #undef's but leaves the #define's, so we get compile > errors. That symbol isn't used by qemu so it's safe to remove. > As the syscall_nr.h generated from syscall.tbl don't have this symbol, I think we can remove it. But I'm very surprised it doesn't work with it for you. Could you put this one-line change in a separate patch? The best would be to re-run it once the change is made to update all the generated syscall_nr.h without the __NR_syscalls line. Moreover the syscall_nr.h I generate from linux-5.9 for hexagon is different from the one you put in this series (the 1024 -> 1079 part is missing). Thanks, Laurent