Re: [PATCH v2 1/7] memcg: memcg_rstat_updated re-entrant safe against irqs

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

 



On 5/15/25 16:31, Shakeel Butt wrote:
> On Thu, May 15, 2025 at 5:47 AM Lorenzo Stoakes
> <lorenzo.stoakes@xxxxxxxxxx> wrote:
>>
>> Shakeel - This breaks the build in mm-new for me:
>>
>>   CC      mm/pt_reclaim.o
>> In file included from ./arch/x86/include/asm/rmwcc.h:5,
>>                  from ./arch/x86/include/asm/bitops.h:18,
>>                  from ./include/linux/bitops.h:68,
>>                  from ./include/linux/radix-tree.h:11,
>>                  from ./include/linux/idr.h:15,
>>                  from ./include/linux/cgroup-defs.h:13,
>>                  from mm/memcontrol.c:28:
>> mm/memcontrol.c: In function ‘mem_cgroup_alloc’:
>> ./arch/x86/include/asm/percpu.h:39:45: error: expected identifier or ‘(’ before ‘__seg_gs’
>>    39 | #define __percpu_seg_override   CONCATENATE(__seg_, __percpu_seg)
>>       |                                             ^~~~~~
>> ./include/linux/args.h:25:24: note: in definition of macro ‘__CONCAT’
>>    25 | #define __CONCAT(a, b) a ## b
>>       |                        ^
>> ./arch/x86/include/asm/percpu.h:39:33: note: in expansion of macro ‘CONCATENATE’
>>    39 | #define __percpu_seg_override   CONCATENATE(__seg_, __percpu_seg)
>>       |                                 ^~~~~~~~~~~
>> ./arch/x86/include/asm/percpu.h:93:33: note: in expansion of macro ‘__percpu_seg_override’
>>    93 | # define __percpu_qual          __percpu_seg_override
>>       |                                 ^~~~~~~~~~~~~~~~~~~~~
>> ././include/linux/compiler_types.h:60:25: note: in expansion of macro ‘__percpu_qual’
>>    60 | # define __percpu       __percpu_qual BTF_TYPE_TAG(percpu)
>>       |                         ^~~~~~~~~~~~~
>> mm/memcontrol.c:3700:45: note: in expansion of macro ‘__percpu’
>>  3700 |         struct memcg_vmstats_percpu *statc, __percpu *pstatc_pcpu;
>>       |                                             ^~~~~~~~
>> mm/memcontrol.c:3731:25: error: ‘pstatc_pcpu’ undeclared (first use in this function); did you mean ‘kstat_cpu’?
>>  3731 |                         pstatc_pcpu = parent->vmstats_percpu;
>>       |                         ^~~~~~~~~~~
>>       |                         kstat_cpu
>> mm/memcontrol.c:3731:25: note: each undeclared identifier is reported only once for each function it appears in
>>
>> The __percpu macro seems to be a bit screwy with comma-delimited decls, as it
>> seems that putting this on its own line fixes this problem:
>>
> 
> Which compiler (and version) is this? Thanks for the fix.

Hm right I see the same errors with gcc 7, 13, 14, 15 but not with clang.




[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux