On 1/12/24 20:53, Jeff Xu wrote:
> On Fri, Jan 12, 2024 at 6:20 PM Randy Dunlap <rdun...@infradead.org> wrote:
>>
>>
>>
>> On 1/11/24 15:41, jef...@chromium.org wrote:
>>> From: Jeff Xu <jef...@google.com>
>>>
>>> This patchset proposes a new mseal() syscall for the Linux kernel.
>>>
>>
>> Jeff,
>> Building arm64 defconfig, on linux-next-20240112, I get:
>>
> I don't quite get how this is related to my change.
> Can you please send me the steps to reproduce ?  I don't usually build arm.

I don't get how it's related either, but when I build arm64 defconfig without
your patches, it builds without errors. After applying your patches, it has
errors... I did it 2 times just to make sure.

It may just be some difference between x86_64 headers (is that what you
build?) and arm64 headers.

Install the x86_64-hosted arm64 compiler from
https://mirrors.edge.kernel.org/pub/tools/crosstool/ in
e.g. /opt/crosstool .


In the kernel source tree:
mkdir ARM64

make ARCH=arm64 O=ARM64 defconfig
make -j25 
CROSS_COMPILE=/opt/crosstool/gcc-13.2.0-nolibc/aarch64-linux/bin/aarch64-linux- 
ARCH=arm64 O=ARM64 all 2>&1 | tee aa64defcon.lst

make ARCH=arm64 O=ARM64 clean
<apply your mseal patches>
make -j25 
CROSS_COMPILE=/opt/crosstool/gcc-13.2.0-nolibc/aarch64-linux/bin/aarch64-linux- 
ARCH=arm64 O=ARM64 all 2>&1 | tee aa64mseal.lst


If that does not reproduce the problem, please let me know.

(I use a script, but that's the essence of the script.)



>>   CC      arch/arm64/kernel/asm-offsets.s
>> In file included from ../include/uapi/linux/mman.h:5,
>>                  from ../include/linux/mm.h:33,
>>                  from ../include/linux/memblock.h:12,
>>                  from ../arch/arm64/include/asm/acpi.h:14,
>>                  from ../include/acpi/acpi_io.h:7,
>>                  from ../include/linux/acpi.h:39,
>>                  from ../include/acpi/apei.h:9,
>>                  from ../include/acpi/ghes.h:5,
>>                  from ../include/linux/arm_sdei.h:8,
>>                  from ../arch/arm64/kernel/asm-offsets.c:10:
>> ../arch/arm64/include/asm/mman.h: In function 'arch_calc_vm_prot_bits':
>> ../arch/arm64/include/asm/mman.h:15:24: error: 'VM_ARM64_BTI' undeclared 
>> (first use in this function); did you mean 'ARM64_BTI'?
>>    15 |                 ret |= VM_ARM64_BTI;
>>       |                        ^~~~~~~~~~~~
>>       |                        ARM64_BTI
>> ../arch/arm64/include/asm/mman.h:15:24: note: each undeclared identifier is 
>> reported only once for each function it appears in
>> ../arch/arm64/include/asm/mman.h:18:24: error: 'VM_MTE' undeclared (first 
>> use in this function); did you mean 'VM_MAP'?
>>    18 |                 ret |= VM_MTE;
>>       |                        ^~~~~~
>>       |                        VM_MAP
>> ../arch/arm64/include/asm/mman.h: In function 'arch_calc_vm_flag_bits':
>> ../arch/arm64/include/asm/mman.h:32:24: error: 'VM_MTE_ALLOWED' undeclared 
>> (first use in this function)
>>    32 |                 return VM_MTE_ALLOWED;
>>       |                        ^~~~~~~~~~~~~~
>> ../arch/arm64/include/asm/mman.h: In function 'arch_validate_flags':
>> ../arch/arm64/include/asm/mman.h:59:29: error: 'VM_MTE' undeclared (first 
>> use in this function); did you mean 'VM_MAP'?
>>    59 |         return !(vm_flags & VM_MTE) || (vm_flags & VM_MTE_ALLOWED);
>>       |                             ^~~~~~
>>       |                             VM_MAP
>> ../arch/arm64/include/asm/mman.h:59:52: error: 'VM_MTE_ALLOWED' undeclared 
>> (first use in this function)
>>    59 |         return !(vm_flags & VM_MTE) || (vm_flags & VM_MTE_ALLOWED);
>>       |                                                    ^~~~~~~~~~~~~~
>>
>>
>> --
>> #Randy
> 

-- 
#Randy

Reply via email to