qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [RFC PATCH v4 27/29] Hexagon (linux-user/hexagon) Linux user emulati


From: Laurent Vivier
Subject: Re: [RFC PATCH v4 27/29] Hexagon (linux-user/hexagon) Linux user emulation
Date: Thu, 1 Oct 2020 09:53:05 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0

Le 30/09/2020 à 22:47, Taylor Simpson a écrit :
> 
> 
>> -----Original Message-----
>> From: Laurent Vivier <laurent@vivier.eu>
>> Sent: Monday, September 28, 2020 3:03 PM
>> To: Taylor Simpson <tsimpson@quicinc.com>; qemu-devel@nongnu.org
>> Cc: richard.henderson@linaro.org; philmd@redhat.com; riku.voipio@iki.fi;
>> aleksandar.m.mail@gmail.com; ale@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





reply via email to

[Prev in Thread] Current Thread [Next in Thread]