All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: oe-kbuild-all@lists.linux.dev,
	Andrew Morton <akpm@linux-foundation.org>,
	Linux Memory Management List <linux-mm@kvack.org>
Subject: [akpm-mm:mm-nonmm-unstable 35/36] include/linux/arm-smccc.h:485:29: error: '__declare_arg_3' undeclared
Date: Tue, 18 Jul 2023 08:37:31 +0800	[thread overview]
Message-ID: <202307180837.RceV83eP-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm.git mm-nonmm-unstable
head:   643039cbab79355ceb1ce9a91e2a7483a44bec05
commit: fceebffabbb6a664115469aac95d243048b09d22 [35/36] arm64: smccc: replace custom COUNT_ARGS() & CONCATENATE() implementations
config: arm64-randconfig-r016-20230717 (https://download.01.org/0day-ci/archive/20230718/202307180837.RceV83eP-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 12.3.0
reproduce: (https://download.01.org/0day-ci/archive/20230718/202307180837.RceV83eP-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202307180837.RceV83eP-lkp@intel.com/

All error/warnings (new ones prefixed by >>):

   In file included from include/linux/arm-smccc.h:8,
                    from drivers/clocksource/arm_arch_timer.c:29:
   drivers/clocksource/arm_arch_timer.c: In function 'kvm_arch_ptp_get_crosststamp':
>> include/linux/arm-smccc.h:485:29: error: '__declare_arg_3' undeclared (first use in this function)
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                             ^~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in definition of macro '__CONCAT'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/arm-smccc.h:485:17: note: in expansion of macro 'CONCATENATE'
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                 ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   drivers/clocksource/arm_arch_timer.c:1795:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
    1795 |         arm_smccc_1_1_invoke(ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:485:29: note: each undeclared identifier is reported only once for each function it appears in
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                             ^~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in definition of macro '__CONCAT'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/arm-smccc.h:485:17: note: in expansion of macro 'CONCATENATE'
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                 ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   drivers/clocksource/arm_arch_timer.c:1795:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
    1795 |         arm_smccc_1_1_invoke(ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:417:38: error: 'arg0' undeclared (first use in this function); did you mean 'r0'?
     417 | #define __constraint_read_0     "r" (arg0)
         |                                      ^~~~
   include/linux/arm-smccc.h:418:33: note: in expansion of macro '__constraint_read_0'
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   drivers/clocksource/arm_arch_timer.c:1795:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
    1795 |         arm_smccc_1_1_invoke(ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:418:59: error: 'arg1' undeclared (first use in this function); did you mean 'r1'?
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                                           ^~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   drivers/clocksource/arm_arch_timer.c:1795:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
    1795 |         arm_smccc_1_1_invoke(ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:419:59: error: 'arg2' undeclared (first use in this function); did you mean 'r2'?
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                                           ^~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   drivers/clocksource/arm_arch_timer.c:1795:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
    1795 |         arm_smccc_1_1_invoke(ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:420:59: error: 'arg3' undeclared (first use in this function); did you mean 'r3'?
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                                           ^~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   drivers/clocksource/arm_arch_timer.c:1795:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
    1795 |         arm_smccc_1_1_invoke(ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:492:21: error: '___res' undeclared (first use in this function)
     492 |                 if (___res)                                             \
         |                     ^~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   drivers/clocksource/arm_arch_timer.c:1795:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
    1795 |         arm_smccc_1_1_invoke(ARM_SMCCC_VENDOR_HYP_KVM_PTP_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> drivers/clocksource/arm_arch_timer.c:1784:13: warning: variable 'ptp_counter' set but not used [-Wunused-but-set-variable]
    1784 |         u32 ptp_counter;
         |             ^~~~~~~~~~~
--
   In file included from include/linux/arm-smccc.h:8,
                    from arch/arm64/kernel/proton-pack.c:20:
   arch/arm64/kernel/proton-pack.c: In function 'spectre_v2_get_cpu_fw_mitigation_state':
>> include/linux/arm-smccc.h:485:29: error: '__declare_arg_3' undeclared (first use in this function)
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                             ^~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in definition of macro '__CONCAT'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/arm-smccc.h:485:17: note: in expansion of macro 'CONCATENATE'
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                 ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:186:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     186 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:485:29: note: each undeclared identifier is reported only once for each function it appears in
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                             ^~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in definition of macro '__CONCAT'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/arm-smccc.h:485:17: note: in expansion of macro 'CONCATENATE'
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                 ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:186:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     186 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:417:38: error: 'arg0' undeclared (first use in this function); did you mean 'r0'?
     417 | #define __constraint_read_0     "r" (arg0)
         |                                      ^~~~
   include/linux/arm-smccc.h:418:33: note: in expansion of macro '__constraint_read_0'
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:186:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     186 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:418:59: error: 'arg1' undeclared (first use in this function); did you mean 'r1'?
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                                           ^~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:186:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     186 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:419:59: error: 'arg2' undeclared (first use in this function); did you mean 'r2'?
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                                           ^~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:186:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     186 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:420:59: error: 'arg3' undeclared (first use in this function); did you mean 'r3'?
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                                           ^~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:186:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     186 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:492:21: error: '___res' undeclared (first use in this function)
     492 |                 if (___res)                                             \
         |                     ^~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:186:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     186 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c: In function 'call_smc_arch_workaround_1':
>> include/linux/arm-smccc.h:485:29: error: '__declare_arg_2' undeclared (first use in this function)
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                             ^~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in definition of macro '__CONCAT'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/arm-smccc.h:485:17: note: in expansion of macro 'CONCATENATE'
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                 ^~~~~~~~~~~
   include/linux/arm-smccc.h:510:33: note: in expansion of macro '__arm_smccc_1_1'
     510 | #define arm_smccc_1_1_smc(...)  __arm_smccc_1_1(SMCCC_SMC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:239:9: note: in expansion of macro 'arm_smccc_1_1_smc'
     239 |         arm_smccc_1_1_smc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:417:38: error: 'arg0' undeclared (first use in this function); did you mean 'r0'?
     417 | #define __constraint_read_0     "r" (arg0)
         |                                      ^~~~
   include/linux/arm-smccc.h:418:33: note: in expansion of macro '__constraint_read_0'
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_2'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:510:33: note: in expansion of macro '__arm_smccc_1_1'
     510 | #define arm_smccc_1_1_smc(...)  __arm_smccc_1_1(SMCCC_SMC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:239:9: note: in expansion of macro 'arm_smccc_1_1_smc'
     239 |         arm_smccc_1_1_smc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:418:59: error: 'arg1' undeclared (first use in this function); did you mean 'r1'?
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                                           ^~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_2'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:510:33: note: in expansion of macro '__arm_smccc_1_1'
     510 | #define arm_smccc_1_1_smc(...)  __arm_smccc_1_1(SMCCC_SMC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:239:9: note: in expansion of macro 'arm_smccc_1_1_smc'
     239 |         arm_smccc_1_1_smc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:419:59: error: 'arg2' undeclared (first use in this function); did you mean 'r2'?
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                                           ^~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_2'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:510:33: note: in expansion of macro '__arm_smccc_1_1'
     510 | #define arm_smccc_1_1_smc(...)  __arm_smccc_1_1(SMCCC_SMC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:239:9: note: in expansion of macro 'arm_smccc_1_1_smc'
     239 |         arm_smccc_1_1_smc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:492:21: error: '___res' undeclared (first use in this function)
     492 |                 if (___res)                                             \
         |                     ^~~~~~
   include/linux/arm-smccc.h:510:33: note: in expansion of macro '__arm_smccc_1_1'
     510 | #define arm_smccc_1_1_smc(...)  __arm_smccc_1_1(SMCCC_SMC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:239:9: note: in expansion of macro 'arm_smccc_1_1_smc'
     239 |         arm_smccc_1_1_smc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c: In function 'call_hvc_arch_workaround_1':
>> include/linux/arm-smccc.h:485:29: error: '__declare_arg_2' undeclared (first use in this function)
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                             ^~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in definition of macro '__CONCAT'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/arm-smccc.h:485:17: note: in expansion of macro 'CONCATENATE'
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                 ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:245:9: note: in expansion of macro 'arm_smccc_1_1_hvc'
     245 |         arm_smccc_1_1_hvc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:417:38: error: 'arg0' undeclared (first use in this function); did you mean 'r0'?
     417 | #define __constraint_read_0     "r" (arg0)
         |                                      ^~~~
   include/linux/arm-smccc.h:418:33: note: in expansion of macro '__constraint_read_0'
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_2'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:245:9: note: in expansion of macro 'arm_smccc_1_1_hvc'
     245 |         arm_smccc_1_1_hvc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:418:59: error: 'arg1' undeclared (first use in this function); did you mean 'r1'?
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                                           ^~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_2'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:245:9: note: in expansion of macro 'arm_smccc_1_1_hvc'
     245 |         arm_smccc_1_1_hvc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:419:59: error: 'arg2' undeclared (first use in this function); did you mean 'r2'?
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                                           ^~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_2'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:245:9: note: in expansion of macro 'arm_smccc_1_1_hvc'
     245 |         arm_smccc_1_1_hvc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:492:21: error: '___res' undeclared (first use in this function)
     492 |                 if (___res)                                             \
         |                     ^~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:245:9: note: in expansion of macro 'arm_smccc_1_1_hvc'
     245 |         arm_smccc_1_1_hvc(ARM_SMCCC_ARCH_WORKAROUND_1, NULL);
         |         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c: In function 'spectre_v4_get_cpu_fw_mitigation_state':
>> include/linux/arm-smccc.h:485:29: error: '__declare_arg_3' undeclared (first use in this function)
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                             ^~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in definition of macro '__CONCAT'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/arm-smccc.h:485:17: note: in expansion of macro 'CONCATENATE'
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                 ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:493:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     493 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:417:38: error: 'arg0' undeclared (first use in this function); did you mean 'r0'?
     417 | #define __constraint_read_0     "r" (arg0)
         |                                      ^~~~
   include/linux/arm-smccc.h:418:33: note: in expansion of macro '__constraint_read_0'
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:493:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     493 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:418:59: error: 'arg1' undeclared (first use in this function); did you mean 'r1'?
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                                           ^~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:493:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     493 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
>> include/linux/arm-smccc.h:419:59: error: 'arg2' undeclared (first use in this function); did you mean 'r2'?
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                                           ^~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:493:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     493 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:420:59: error: 'arg3' undeclared (first use in this function); did you mean 'r3'?
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                                           ^~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:493:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     493 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:492:21: error: '___res' undeclared (first use in this function)
     492 |                 if (___res)                                             \
         |                     ^~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:493:9: note: in expansion of macro 'arm_smccc_1_1_invoke'
     493 |         arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_FEATURES_FUNC_ID,
         |         ^~~~~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c: In function 'spectre_v4_enable_fw_mitigation':
   include/linux/arm-smccc.h:485:29: error: '__declare_arg_3' undeclared (first use in this function)
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                             ^~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in definition of macro '__CONCAT'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/arm-smccc.h:485:17: note: in expansion of macro 'CONCATENATE'
     485 |                 CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));   \
         |                 ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
     563 |                         arm_smccc_1_1_hvc(__VA_ARGS__);                 \
         |                         ^~~~~~~~~~~~~~~~~
   arch/arm64/kernel/proton-pack.c:619:17: note: in expansion of macro 'arm_smccc_1_1_invoke'
     619 |                 arm_smccc_1_1_invoke(ARM_SMCCC_ARCH_WORKAROUND_2, false, NULL);
         |                 ^~~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:417:38: error: 'arg0' undeclared (first use in this function); did you mean 'r0'?
     417 | #define __constraint_read_0     "r" (arg0)
         |                                      ^~~~
   include/linux/arm-smccc.h:418:33: note: in expansion of macro '__constraint_read_0'
     418 | #define __constraint_read_1     __constraint_read_0, "r" (arg1)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:419:33: note: in expansion of macro '__constraint_read_1'
     419 | #define __constraint_read_2     __constraint_read_1, "r" (arg2)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:420:33: note: in expansion of macro '__constraint_read_2'
     420 | #define __constraint_read_3     __constraint_read_2, "r" (arg3)
         |                                 ^~~~~~~~~~~~~~~~~~~
   include/linux/args.h:25:24: note: in expansion of macro '__constraint_read_3'
      25 | #define __CONCAT(a, b) a ## b
         |                        ^
   include/linux/args.h:26:27: note: in expansion of macro '__CONCAT'
      26 | #define CONCATENATE(a, b) __CONCAT(a, b)
         |                           ^~~~~~~~
   include/linux/arm-smccc.h:489:32: note: in expansion of macro 'CONCATENATE'
     489 |                              : CONCATENATE(__constraint_read_,          \
         |                                ^~~~~~~~~~~
   include/linux/arm-smccc.h:526:33: note: in expansion of macro '__arm_smccc_1_1'
     526 | #define arm_smccc_1_1_hvc(...)  __arm_smccc_1_1(SMCCC_HVC_INST, __VA_ARGS__)
         |                                 ^~~~~~~~~~~~~~~
   include/linux/arm-smccc.h:563:25: note: in expansion of macro 'arm_smccc_1_1_hvc'
..


vim +/__declare_arg_3 +485 include/linux/arm-smccc.h

   416	
 > 417	#define __constraint_read_0	"r" (arg0)
 > 418	#define __constraint_read_1	__constraint_read_0, "r" (arg1)
 > 419	#define __constraint_read_2	__constraint_read_1, "r" (arg2)
 > 420	#define __constraint_read_3	__constraint_read_2, "r" (arg3)
 > 421	#define __constraint_read_4	__constraint_read_3, "r" (arg4)
 > 422	#define __constraint_read_5	__constraint_read_4, "r" (arg5)
 > 423	#define __constraint_read_6	__constraint_read_5, "r" (arg6)
 > 424	#define __constraint_read_7	__constraint_read_6, "r" (arg7)
   425	
   426	#define __declare_arg_0(a0, res)					\
   427		struct arm_smccc_res   *___res = res;				\
   428		register unsigned long arg0 asm("r0") = (u32)a0
   429	
   430	#define __declare_arg_1(a0, a1, res)					\
   431		typeof(a1) __a1 = a1;						\
   432		struct arm_smccc_res   *___res = res;				\
   433		register unsigned long arg0 asm("r0") = (u32)a0;			\
   434		register typeof(a1) arg1 asm("r1") = __a1
   435	
   436	#define __declare_arg_2(a0, a1, a2, res)				\
   437		typeof(a1) __a1 = a1;						\
   438		typeof(a2) __a2 = a2;						\
   439		struct arm_smccc_res   *___res = res;				\
   440		register unsigned long arg0 asm("r0") = (u32)a0;			\
   441		register typeof(a1) arg1 asm("r1") = __a1;			\
   442		register typeof(a2) arg2 asm("r2") = __a2
   443	
   444	#define __declare_arg_3(a0, a1, a2, a3, res)				\
   445		typeof(a1) __a1 = a1;						\
   446		typeof(a2) __a2 = a2;						\
   447		typeof(a3) __a3 = a3;						\
   448		struct arm_smccc_res   *___res = res;				\
   449		register unsigned long arg0 asm("r0") = (u32)a0;			\
   450		register typeof(a1) arg1 asm("r1") = __a1;			\
   451		register typeof(a2) arg2 asm("r2") = __a2;			\
   452		register typeof(a3) arg3 asm("r3") = __a3
   453	
   454	#define __declare_arg_4(a0, a1, a2, a3, a4, res)			\
   455		typeof(a4) __a4 = a4;						\
   456		__declare_arg_3(a0, a1, a2, a3, res);				\
   457		register typeof(a4) arg4 asm("r4") = __a4
   458	
   459	#define __declare_arg_5(a0, a1, a2, a3, a4, a5, res)			\
   460		typeof(a5) __a5 = a5;						\
   461		__declare_arg_4(a0, a1, a2, a3, a4, res);			\
   462		register typeof(a5) arg5 asm("r5") = __a5
   463	
   464	#define __declare_arg_6(a0, a1, a2, a3, a4, a5, a6, res)		\
   465		typeof(a6) __a6 = a6;						\
   466		__declare_arg_5(a0, a1, a2, a3, a4, a5, res);			\
   467		register typeof(a6) arg6 asm("r6") = __a6
   468	
   469	#define __declare_arg_7(a0, a1, a2, a3, a4, a5, a6, a7, res)		\
   470		typeof(a7) __a7 = a7;						\
   471		__declare_arg_6(a0, a1, a2, a3, a4, a5, a6, res);		\
   472		register typeof(a7) arg7 asm("r7") = __a7
   473	
   474	/*
   475	 * We have an output list that is not necessarily used, and GCC feels
   476	 * entitled to optimise the whole sequence away. "volatile" is what
   477	 * makes it stick.
   478	 */
   479	#define __arm_smccc_1_1(inst, ...)					\
   480		do {								\
   481			register unsigned long r0 asm("r0");			\
   482			register unsigned long r1 asm("r1");			\
   483			register unsigned long r2 asm("r2");			\
   484			register unsigned long r3 asm("r3"); 			\
 > 485			CONCATENATE(__declare_arg_, COUNT_ARGS(__VA_ARGS__));	\
   486			asm volatile(SMCCC_SVE_CHECK				\
   487				     inst "\n" :				\
   488				     "=r" (r0), "=r" (r1), "=r" (r2), "=r" (r3)	\
 > 489				     : CONCATENATE(__constraint_read_,		\
   490						   COUNT_ARGS(__VA_ARGS__))	\
   491				     : smccc_sve_clobbers "memory");		\
 > 492			if (___res)						\
   493				*___res = (typeof(*___res)){r0, r1, r2, r3};	\
   494		} while (0)
   495	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

                 reply	other threads:[~2023-07-18  0:38 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202307180837.RceV83eP-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=linux-mm@kvack.org \
    --cc=oe-kbuild-all@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.