[pm:bleeding-edge] BUILD SUCCESS e98c22d0368879136786ad5a500791d1846ab754
by kernel test robot
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git bleeding-edge
branch HEAD: e98c22d0368879136786ad5a500791d1846ab754 Merge branches 'acpi-misc' and 'acpi-resources' into linux-next
elapsed time: 726m
configs tested: 202
configs skipped: 2
The following configs have been built successfully.
More configs may be tested in the coming days.
gcc tested configs:
arm defconfig
arm64 allyesconfig
arm64 defconfig
arm allyesconfig
arm allmodconfig
sh ap325rxa_defconfig
mips maltasmvp_eva_defconfig
mips pic32mzda_defconfig
powerpc bamboo_defconfig
powerpc tqm8560_defconfig
m68k sun3x_defconfig
arc nsim_700_defconfig
mips loongson3_defconfig
arm sunxi_defconfig
nios2 defconfig
powerpc socrates_defconfig
um x86_64_defconfig
powerpc fsp2_defconfig
powerpc ppc6xx_defconfig
arm mps2_defconfig
powerpc xes_mpc85xx_defconfig
powerpc arches_defconfig
powerpc tqm8555_defconfig
sh apsh4ad0a_defconfig
arm hackkit_defconfig
powerpc redwood_defconfig
m68k apollo_defconfig
mips bigsur_defconfig
xtensa alldefconfig
mips workpad_defconfig
powerpc mpc8560_ads_defconfig
powerpc adder875_defconfig
sh ecovec24-romimage_defconfig
m68k mac_defconfig
sh sh2007_defconfig
sh polaris_defconfig
arm aspeed_g5_defconfig
arm stm32_defconfig
powerpc sbc8548_defconfig
arm milbeaut_m10v_defconfig
arm shannon_defconfig
arc axs101_defconfig
mips db1xxx_defconfig
m68k amiga_defconfig
arm zeus_defconfig
powerpc ep88xc_defconfig
arm sama5_defconfig
powerpc cm5200_defconfig
arm realview_defconfig
s390 debug_defconfig
mips e55_defconfig
sh sh7710voipgw_defconfig
mips decstation_r4k_defconfig
sh se7206_defconfig
powerpc lite5200b_defconfig
powerpc g5_defconfig
arm omap1_defconfig
arm versatile_defconfig
sh hp6xx_defconfig
sh urquell_defconfig
powerpc obs600_defconfig
arm mxs_defconfig
sh sh7770_generic_defconfig
powerpc pq2fads_defconfig
parisc generic-64bit_defconfig
arm rpc_defconfig
powerpc katmai_defconfig
powerpc mpc5200_defconfig
powerpc mpc8272_ads_defconfig
m68k sun3_defconfig
powerpc sam440ep_defconfig
xtensa xip_kc705_defconfig
powerpc tqm5200_defconfig
m68k m5407c3_defconfig
powerpc kilauea_defconfig
arm clps711x_defconfig
mips malta_qemu_32r6_defconfig
mips nlm_xlr_defconfig
powerpc chrp32_defconfig
powerpc mpc834x_itxgp_defconfig
c6x dsk6455_defconfig
arm lpc32xx_defconfig
powerpc iss476-smp_defconfig
riscv nommu_k210_defconfig
powerpc ge_imp3a_defconfig
m68k mvme16x_defconfig
sh sh7757lcr_defconfig
powerpc pcm030_defconfig
sparc allyesconfig
powerpc ppc64e_defconfig
powerpc skiroot_defconfig
sh ecovec24_defconfig
sh se7722_defconfig
arc vdk_hs38_defconfig
sh kfr2r09_defconfig
arm am200epdkit_defconfig
arm efm32_defconfig
arm corgi_defconfig
powerpc mpc837x_rdb_defconfig
mips rt305x_defconfig
sh alldefconfig
arm tct_hammer_defconfig
sh sh03_defconfig
arm axm55xx_defconfig
powerpc ebony_defconfig
sparc sparc32_defconfig
arc defconfig
riscv nommu_virt_defconfig
powerpc mpc7448_hpc2_defconfig
mips ip32_defconfig
arm spear13xx_defconfig
sh se7705_defconfig
arm cm_x300_defconfig
sh r7780mp_defconfig
arc alldefconfig
powerpc mpc83xx_defconfig
powerpc tqm8540_defconfig
powerpc motionpro_defconfig
powerpc wii_defconfig
powerpc kmeter1_defconfig
ia64 allmodconfig
ia64 defconfig
ia64 allyesconfig
m68k allmodconfig
m68k defconfig
m68k allyesconfig
arc allyesconfig
nds32 allnoconfig
c6x allyesconfig
nds32 defconfig
nios2 allyesconfig
csky defconfig
alpha defconfig
alpha allyesconfig
xtensa allyesconfig
h8300 allyesconfig
sh allmodconfig
parisc defconfig
s390 allyesconfig
parisc allyesconfig
s390 defconfig
i386 allyesconfig
sparc defconfig
i386 defconfig
mips allyesconfig
mips allmodconfig
powerpc allyesconfig
powerpc allmodconfig
powerpc allnoconfig
x86_64 randconfig-a005-20201118
x86_64 randconfig-a003-20201118
x86_64 randconfig-a004-20201118
x86_64 randconfig-a002-20201118
x86_64 randconfig-a006-20201118
x86_64 randconfig-a001-20201118
i386 randconfig-a006-20201119
i386 randconfig-a005-20201119
i386 randconfig-a002-20201119
i386 randconfig-a001-20201119
i386 randconfig-a003-20201119
i386 randconfig-a004-20201119
i386 randconfig-a006-20201118
i386 randconfig-a005-20201118
i386 randconfig-a002-20201118
i386 randconfig-a001-20201118
i386 randconfig-a003-20201118
i386 randconfig-a004-20201118
i386 randconfig-a012-20201118
i386 randconfig-a014-20201118
i386 randconfig-a016-20201118
i386 randconfig-a011-20201118
i386 randconfig-a013-20201118
i386 randconfig-a015-20201118
i386 randconfig-a012-20201119
i386 randconfig-a014-20201119
i386 randconfig-a016-20201119
i386 randconfig-a011-20201119
i386 randconfig-a013-20201119
i386 randconfig-a015-20201119
riscv allyesconfig
riscv allnoconfig
riscv defconfig
riscv rv32_defconfig
riscv allmodconfig
x86_64 rhel
x86_64 allyesconfig
x86_64 rhel-7.6-kselftests
x86_64 defconfig
x86_64 rhel-8.3
x86_64 kexec
clang tested configs:
x86_64 randconfig-a015-20201118
x86_64 randconfig-a014-20201118
x86_64 randconfig-a011-20201118
x86_64 randconfig-a013-20201118
x86_64 randconfig-a016-20201118
x86_64 randconfig-a012-20201118
x86_64 randconfig-a005-20201119
x86_64 randconfig-a003-20201119
x86_64 randconfig-a004-20201119
x86_64 randconfig-a002-20201119
x86_64 randconfig-a006-20201119
x86_64 randconfig-a001-20201119
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
5 months
[pm:bleeding-edge] BUILD SUCCESS b7eddc37f293ad0229ca31fe90d08e748f79c0ed
by kernel test robot
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git bleeding-edge
branch HEAD: b7eddc37f293ad0229ca31fe90d08e748f79c0ed Merge branch 'acpi-resources' into bleeding-edge
elapsed time: 725m
configs tested: 97
configs skipped: 2
The following configs have been built successfully.
More configs may be tested in the coming days.
gcc tested configs:
arm defconfig
arm64 allyesconfig
arm64 defconfig
arm allyesconfig
arm allmodconfig
s390 zfcpdump_defconfig
openrisc alldefconfig
powerpc xes_mpc85xx_defconfig
arc haps_hs_defconfig
arc vdk_hs38_smp_defconfig
arm pxa910_defconfig
sh se7751_defconfig
sh sh7785lcr_defconfig
sh se7206_defconfig
m68k m5475evb_defconfig
c6x defconfig
mips ar7_defconfig
arm hisi_defconfig
arm viper_defconfig
arm mv78xx0_defconfig
ia64 zx1_defconfig
h8300 alldefconfig
arm shannon_defconfig
h8300 h8s-sim_defconfig
sh sh7724_generic_defconfig
powerpc klondike_defconfig
powerpc mpc832x_mds_defconfig
powerpc gamecube_defconfig
ia64 allmodconfig
ia64 defconfig
ia64 allyesconfig
m68k allmodconfig
m68k defconfig
m68k allyesconfig
nios2 defconfig
arc allyesconfig
nds32 allnoconfig
c6x allyesconfig
nds32 defconfig
nios2 allyesconfig
csky defconfig
alpha defconfig
alpha allyesconfig
xtensa allyesconfig
h8300 allyesconfig
arc defconfig
sh allmodconfig
parisc defconfig
s390 allyesconfig
parisc allyesconfig
s390 defconfig
i386 allyesconfig
sparc allyesconfig
sparc defconfig
i386 defconfig
mips allyesconfig
mips allmodconfig
powerpc allyesconfig
powerpc allmodconfig
powerpc allnoconfig
i386 randconfig-a006-20201117
i386 randconfig-a005-20201117
i386 randconfig-a001-20201117
i386 randconfig-a002-20201117
i386 randconfig-a004-20201117
i386 randconfig-a003-20201117
i386 randconfig-a012-20201117
i386 randconfig-a014-20201117
i386 randconfig-a016-20201117
i386 randconfig-a011-20201117
i386 randconfig-a015-20201117
i386 randconfig-a013-20201117
riscv nommu_k210_defconfig
riscv allyesconfig
riscv nommu_virt_defconfig
riscv allnoconfig
riscv defconfig
riscv rv32_defconfig
riscv allmodconfig
x86_64 rhel
x86_64 allyesconfig
x86_64 rhel-7.6-kselftests
x86_64 defconfig
x86_64 rhel-8.3
x86_64 kexec
clang tested configs:
x86_64 randconfig-a003-20201117
x86_64 randconfig-a005-20201117
x86_64 randconfig-a004-20201117
x86_64 randconfig-a002-20201117
x86_64 randconfig-a001-20201117
x86_64 randconfig-a006-20201117
x86_64 randconfig-a015-20201116
x86_64 randconfig-a011-20201116
x86_64 randconfig-a014-20201116
x86_64 randconfig-a013-20201116
x86_64 randconfig-a016-20201116
x86_64 randconfig-a012-20201116
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
5 months
[pm:bleeding-edge] BUILD SUCCESS b098fbf94c5d6f1d30a3820ac4c9859d0b0abf0b
by kernel test robot
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git bleeding-edge
branch HEAD: b098fbf94c5d6f1d30a3820ac4c9859d0b0abf0b Merge branch 'linux-next' into bleeding-edge
elapsed time: 725m
configs tested: 91
configs skipped: 2
The following configs have been built successfully.
More configs may be tested in the coming days.
gcc tested configs:
arm defconfig
arm64 allyesconfig
arm64 defconfig
arm allyesconfig
arm allmodconfig
mips cu1830-neo_defconfig
arm socfpga_defconfig
nios2 10m50_defconfig
powerpc mpc8315_rdb_defconfig
xtensa nommu_kc705_defconfig
arm zeus_defconfig
arm omap1_defconfig
arm neponset_defconfig
mips ip22_defconfig
arm iop32x_defconfig
mips loongson3_defconfig
powerpc stx_gp3_defconfig
arc nsimosci_hs_defconfig
powerpc mpc8272_ads_defconfig
m68k m5249evb_defconfig
m68k sun3x_defconfig
arm collie_defconfig
ia64 allmodconfig
ia64 defconfig
ia64 allyesconfig
m68k allmodconfig
m68k defconfig
m68k allyesconfig
nds32 defconfig
nios2 allyesconfig
csky defconfig
alpha defconfig
alpha allyesconfig
xtensa allyesconfig
h8300 allyesconfig
arc defconfig
sh allmodconfig
parisc defconfig
s390 allyesconfig
parisc allyesconfig
s390 defconfig
i386 allyesconfig
sparc allyesconfig
sparc defconfig
i386 defconfig
nios2 defconfig
arc allyesconfig
nds32 allnoconfig
c6x allyesconfig
mips allyesconfig
mips allmodconfig
powerpc allyesconfig
powerpc allmodconfig
powerpc allnoconfig
i386 randconfig-a006-20201116
i386 randconfig-a005-20201116
i386 randconfig-a001-20201116
i386 randconfig-a002-20201116
i386 randconfig-a004-20201116
i386 randconfig-a003-20201116
x86_64 randconfig-a015-20201115
x86_64 randconfig-a011-20201115
x86_64 randconfig-a014-20201115
x86_64 randconfig-a013-20201115
x86_64 randconfig-a016-20201115
x86_64 randconfig-a012-20201115
i386 randconfig-a012-20201116
i386 randconfig-a014-20201116
i386 randconfig-a016-20201116
i386 randconfig-a011-20201116
i386 randconfig-a015-20201116
i386 randconfig-a013-20201116
riscv nommu_k210_defconfig
riscv allyesconfig
riscv nommu_virt_defconfig
riscv allnoconfig
riscv defconfig
riscv rv32_defconfig
riscv allmodconfig
x86_64 rhel
x86_64 allyesconfig
x86_64 rhel-7.6-kselftests
x86_64 defconfig
x86_64 rhel-8.3
x86_64 kexec
clang tested configs:
x86_64 randconfig-a003-20201115
x86_64 randconfig-a005-20201115
x86_64 randconfig-a004-20201115
x86_64 randconfig-a002-20201115
x86_64 randconfig-a001-20201115
x86_64 randconfig-a006-20201115
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
5 months
leave
by Zheng, Guangchun
%(web_page_url)slistinfo%(cgiext)s/%(_internal_name)s
5 months, 1 week
Re: [PATCH] ACPICA: fix -Wfallthrough
by Moore, Robert
-----Original Message-----
From: Nick Desaulniers <ndesaulniers(a)google.com>
Sent: Friday, November 13, 2020 2:09 PM
To: Moore, Robert <robert.moore(a)intel.com>
Cc: Kaneda, Erik <erik.kaneda(a)intel.com>; Wysocki, Rafael J <rafael.j.wysocki(a)intel.com>; Gustavo A . R . Silva <gustavoars(a)kernel.org>; clang-built-linux(a)googlegroups.com; Len Brown <lenb(a)kernel.org>; linux-acpi(a)vger.kernel.org; devel(a)acpica.org; linux-kernel(a)vger.kernel.org
Subject: Re: [PATCH] ACPICA: fix -Wfallthrough
On Fri, Nov 13, 2020 at 1:45 PM Moore, Robert <robert.moore(a)intel.com> wrote:
>
> BTW, if you can make a pull request for the patch up on github, that would help.
https://github.com/acpica/acpica/pull/650
Great, thanks. I'll look at/merge the request next week.
Bob
--
Thanks,
~Nick Desaulniers
5 months, 1 week
Re: [PATCH] ACPICA: fix -Wfallthrough
by Moore, Robert
-----Original Message-----
From: Nick Desaulniers <ndesaulniers(a)google.com>
Sent: Friday, November 13, 2020 1:33 PM
To: Moore, Robert <robert.moore(a)intel.com>
Cc: Kaneda, Erik <erik.kaneda(a)intel.com>; Wysocki, Rafael J <rafael.j.wysocki(a)intel.com>; Gustavo A . R . Silva <gustavoars(a)kernel.org>; clang-built-linux(a)googlegroups.com; Len Brown <lenb(a)kernel.org>; linux-acpi(a)vger.kernel.org; devel(a)acpica.org; linux-kernel(a)vger.kernel.org
Subject: Re: [PATCH] ACPICA: fix -Wfallthrough
On Fri, Nov 13, 2020 at 1:27 PM Moore, Robert <robert.moore(a)intel.com> wrote:
>
>
>
> -----Original Message-----
> From: ndesaulniers via sendgmr
> <ndesaulniers(a)ndesaulniers1.mtv.corp.google.com> On Behalf Of Nick
> Desaulniers
> Sent: Tuesday, November 10, 2020 6:12 PM
> To: Moore, Robert <robert.moore(a)intel.com>; Kaneda, Erik
> <erik.kaneda(a)intel.com>; Wysocki, Rafael J
> <rafael.j.wysocki(a)intel.com>; Gustavo A . R . Silva
> <gustavoars(a)kernel.org>
> Cc: clang-built-linux(a)googlegroups.com; Nick Desaulniers
> <ndesaulniers(a)google.com>; Len Brown <lenb(a)kernel.org>;
> linux-acpi(a)vger.kernel.org; devel(a)acpica.org;
> linux-kernel(a)vger.kernel.org
> Subject: [PATCH] ACPICA: fix -Wfallthrough
>
> The "fallthrough" pseudo-keyword was added as a portable way to denote intentional fallthrough. This code seemed to be using a mix of fallthrough comments that GCC recognizes, and some kind of lint marker.
> I'm guessing that linter hasn't been run in a while from the mixed use of the marker vs comments.
>
> /*lint -fallthrough */
>
> This is the lint marker
Yes; but from my patch, the hunk modifying
acpi_ex_store_object_to_node() and vsnprintf() seem to indicate that maybe the linter hasn't been run in a while.
Which linter is that? I'm curious whether I should leave those be, and whether we're going to have an issue between compilers and linters as to which line/order these would need to appear on.
It's an old version of PC-Lint, which we don't use anymore.
>
> BTW, what version of gcc added -Wfallthrough?
GCC 7.1 added -Wimplicit-fallthrough.
>
>
> Signed-off-by: Nick Desaulniers <ndesaulniers(a)google.com>
> ---
> drivers/acpi/acpica/dscontrol.c | 3 +--
> drivers/acpi/acpica/dswexec.c | 4 +---
> drivers/acpi/acpica/dswload.c | 3 +--
> drivers/acpi/acpica/dswload2.c | 3 +--
> drivers/acpi/acpica/exfldio.c | 3 +--
> drivers/acpi/acpica/exresop.c | 5 ++---
> drivers/acpi/acpica/exstore.c | 6 ++----
> drivers/acpi/acpica/hwgpe.c | 3 +--
> drivers/acpi/acpica/utdelete.c | 3 +--
> drivers/acpi/acpica/utprint.c | 2 +-
> 10 files changed, 12 insertions(+), 23 deletions(-)
>
> diff --git a/drivers/acpi/acpica/dscontrol.c
> b/drivers/acpi/acpica/dscontrol.c index 4b5b6e859f62..1e75e5fbfd19
> 100644
> --- a/drivers/acpi/acpica/dscontrol.c
> +++ b/drivers/acpi/acpica/dscontrol.c
> @@ -61,8 +61,7 @@ acpi_ds_exec_begin_control_op(struct acpi_walk_state *walk_state,
> break;
> }
> }
> -
> - /*lint -fallthrough */
> + fallthrough;
>
> case AML_IF_OP:
> /*
> diff --git a/drivers/acpi/acpica/dswexec.c
> b/drivers/acpi/acpica/dswexec.c index 1d4f8c81028c..e8c32d4fe55f
> 100644
> --- a/drivers/acpi/acpica/dswexec.c
> +++ b/drivers/acpi/acpica/dswexec.c
> @@ -597,9 +597,7 @@ acpi_status acpi_ds_exec_end_op(struct acpi_walk_state *walk_state)
> if (ACPI_FAILURE(status)) {
> break;
> }
> -
> - /* Fall through */
> - /*lint -fallthrough */
> + fallthrough;
>
> case AML_INT_EVAL_SUBTREE_OP:
>
> diff --git a/drivers/acpi/acpica/dswload.c
> b/drivers/acpi/acpica/dswload.c index 27069325b6de..afc663c3742d
> 100644
> --- a/drivers/acpi/acpica/dswload.c
> +++ b/drivers/acpi/acpica/dswload.c
> @@ -223,8 +223,7 @@ acpi_ds_load1_begin_op(struct acpi_walk_state *walk_state,
> parse_flags & ACPI_PARSE_MODULE_LEVEL)) {
> break;
> }
> -
> - /*lint -fallthrough */
> + fallthrough;
>
> default:
>
> diff --git a/drivers/acpi/acpica/dswload2.c
> b/drivers/acpi/acpica/dswload2.c index edadbe146506..1b794b6ba072
> 100644
> --- a/drivers/acpi/acpica/dswload2.c
> +++ b/drivers/acpi/acpica/dswload2.c
> @@ -213,8 +213,7 @@ acpi_ds_load2_begin_op(struct acpi_walk_state *walk_state,
> parse_flags & ACPI_PARSE_MODULE_LEVEL)) {
> break;
> }
> -
> - /*lint -fallthrough */
> + fallthrough;
>
> default:
>
> diff --git a/drivers/acpi/acpica/exfldio.c
> b/drivers/acpi/acpica/exfldio.c index ade35ff1c7ba..9d1cabe0fed9
> 100644
> --- a/drivers/acpi/acpica/exfldio.c
> +++ b/drivers/acpi/acpica/exfldio.c
> @@ -433,8 +433,7 @@ acpi_ex_field_datum_io(union acpi_operand_object *obj_desc,
> * Now that the Bank has been selected, fall through to the
> * region_field case and write the datum to the Operation Region
> */
> -
> - /*lint -fallthrough */
> + fallthrough;
>
> case ACPI_TYPE_LOCAL_REGION_FIELD:
> /*
> diff --git a/drivers/acpi/acpica/exresop.c
> b/drivers/acpi/acpica/exresop.c index 4d1b22971d58..df48faa9a551
> 100644
> --- a/drivers/acpi/acpica/exresop.c
> +++ b/drivers/acpi/acpica/exresop.c
> @@ -197,8 +197,7 @@ acpi_ex_resolve_operands(u16 opcode,
> case ACPI_REFCLASS_DEBUG:
>
> target_op = AML_DEBUG_OP;
> -
> - /*lint -fallthrough */
> + fallthrough;
>
> case ACPI_REFCLASS_ARG:
> case ACPI_REFCLASS_LOCAL:
> @@ -264,7 +263,7 @@ acpi_ex_resolve_operands(u16 opcode,
> * Else not a string - fall through to the normal Reference
> * case below
> */
> - /*lint -fallthrough */
> + fallthrough;
>
> case ARGI_REFERENCE: /* References: */
> case ARGI_INTEGER_REF:
> diff --git a/drivers/acpi/acpica/exstore.c
> b/drivers/acpi/acpica/exstore.c index 3adc0a29d890..2067baa7c120
> 100644
> --- a/drivers/acpi/acpica/exstore.c
> +++ b/drivers/acpi/acpica/exstore.c
> @@ -95,8 +95,7 @@ acpi_ex_store(union acpi_operand_object *source_desc,
> if (dest_desc->common.flags & AOPOBJ_AML_CONSTANT) {
> return_ACPI_STATUS(AE_OK);
> }
> -
> - /*lint -fallthrough */
> + fallthrough;
>
> default:
>
> @@ -421,8 +420,7 @@ acpi_ex_store_object_to_node(union acpi_operand_object *source_desc,
> }
> break;
> }
> -
> - /* Fallthrough */
> + fallthrough;
>
> case ACPI_TYPE_DEVICE:
> case ACPI_TYPE_EVENT:
> diff --git a/drivers/acpi/acpica/hwgpe.c b/drivers/acpi/acpica/hwgpe.c
> index b13a4ed5bc63..fbfad80c8a53 100644
> --- a/drivers/acpi/acpica/hwgpe.c
> +++ b/drivers/acpi/acpica/hwgpe.c
> @@ -166,8 +166,7 @@ acpi_hw_low_set_gpe(struct acpi_gpe_event_info *gpe_event_info, u32 action)
> if (!(register_bit & gpe_register_info->enable_mask)) {
> return (AE_BAD_PARAMETER);
> }
> -
> - /*lint -fallthrough */
> + fallthrough;
>
> case ACPI_GPE_ENABLE:
>
> diff --git a/drivers/acpi/acpica/utdelete.c
> b/drivers/acpi/acpica/utdelete.c index 4c0d4e434196..8076e7947585
> 100644
> --- a/drivers/acpi/acpica/utdelete.c
> +++ b/drivers/acpi/acpica/utdelete.c
> @@ -111,8 +111,7 @@ static void acpi_ut_delete_internal_obj(union acpi_operand_object *object)
> (void)acpi_ev_delete_gpe_block(object->device.
> gpe_block);
> }
> -
> - /*lint -fallthrough */
> + fallthrough;
>
> case ACPI_TYPE_PROCESSOR:
> case ACPI_TYPE_THERMAL:
> diff --git a/drivers/acpi/acpica/utprint.c
> b/drivers/acpi/acpica/utprint.c index 681c11f4af4e..f7e43baf5ff2
> 100644
> --- a/drivers/acpi/acpica/utprint.c
> +++ b/drivers/acpi/acpica/utprint.c
> @@ -475,7 +475,7 @@ int vsnprintf(char *string, acpi_size size, const char *format, va_list args)
> case 'X':
>
> type |= ACPI_FORMAT_UPPER;
> - /* FALLTHROUGH */
> + fallthrough;
>
> case 'x':
>
> --
> 2.29.2.222.g5d2a92d10f8-goog
>
--
Thanks,
~Nick Desaulniers
5 months, 1 week
Re: [PATCH] ACPICA: fix -Wfallthrough
by Moore, Robert
-----Original Message-----
From: ndesaulniers via sendgmr <ndesaulniers(a)ndesaulniers1.mtv.corp.google.com> On Behalf Of Nick Desaulniers
Sent: Tuesday, November 10, 2020 6:12 PM
To: Moore, Robert <robert.moore(a)intel.com>; Kaneda, Erik <erik.kaneda(a)intel.com>; Wysocki, Rafael J <rafael.j.wysocki(a)intel.com>; Gustavo A . R . Silva <gustavoars(a)kernel.org>
Cc: clang-built-linux(a)googlegroups.com; Nick Desaulniers <ndesaulniers(a)google.com>; Len Brown <lenb(a)kernel.org>; linux-acpi(a)vger.kernel.org; devel(a)acpica.org; linux-kernel(a)vger.kernel.org
Subject: [PATCH] ACPICA: fix -Wfallthrough
The "fallthrough" pseudo-keyword was added as a portable way to denote intentional fallthrough. This code seemed to be using a mix of fallthrough comments that GCC recognizes, and some kind of lint marker.
I'm guessing that linter hasn't been run in a while from the mixed use of the marker vs comments.
/*lint -fallthrough */
This is the lint marker
BTW, what version of gcc added -Wfallthrough?
Signed-off-by: Nick Desaulniers <ndesaulniers(a)google.com>
---
drivers/acpi/acpica/dscontrol.c | 3 +--
drivers/acpi/acpica/dswexec.c | 4 +---
drivers/acpi/acpica/dswload.c | 3 +--
drivers/acpi/acpica/dswload2.c | 3 +--
drivers/acpi/acpica/exfldio.c | 3 +--
drivers/acpi/acpica/exresop.c | 5 ++---
drivers/acpi/acpica/exstore.c | 6 ++----
drivers/acpi/acpica/hwgpe.c | 3 +--
drivers/acpi/acpica/utdelete.c | 3 +--
drivers/acpi/acpica/utprint.c | 2 +-
10 files changed, 12 insertions(+), 23 deletions(-)
diff --git a/drivers/acpi/acpica/dscontrol.c b/drivers/acpi/acpica/dscontrol.c index 4b5b6e859f62..1e75e5fbfd19 100644
--- a/drivers/acpi/acpica/dscontrol.c
+++ b/drivers/acpi/acpica/dscontrol.c
@@ -61,8 +61,7 @@ acpi_ds_exec_begin_control_op(struct acpi_walk_state *walk_state,
break;
}
}
-
- /*lint -fallthrough */
+ fallthrough;
case AML_IF_OP:
/*
diff --git a/drivers/acpi/acpica/dswexec.c b/drivers/acpi/acpica/dswexec.c index 1d4f8c81028c..e8c32d4fe55f 100644
--- a/drivers/acpi/acpica/dswexec.c
+++ b/drivers/acpi/acpica/dswexec.c
@@ -597,9 +597,7 @@ acpi_status acpi_ds_exec_end_op(struct acpi_walk_state *walk_state)
if (ACPI_FAILURE(status)) {
break;
}
-
- /* Fall through */
- /*lint -fallthrough */
+ fallthrough;
case AML_INT_EVAL_SUBTREE_OP:
diff --git a/drivers/acpi/acpica/dswload.c b/drivers/acpi/acpica/dswload.c index 27069325b6de..afc663c3742d 100644
--- a/drivers/acpi/acpica/dswload.c
+++ b/drivers/acpi/acpica/dswload.c
@@ -223,8 +223,7 @@ acpi_ds_load1_begin_op(struct acpi_walk_state *walk_state,
parse_flags & ACPI_PARSE_MODULE_LEVEL)) {
break;
}
-
- /*lint -fallthrough */
+ fallthrough;
default:
diff --git a/drivers/acpi/acpica/dswload2.c b/drivers/acpi/acpica/dswload2.c index edadbe146506..1b794b6ba072 100644
--- a/drivers/acpi/acpica/dswload2.c
+++ b/drivers/acpi/acpica/dswload2.c
@@ -213,8 +213,7 @@ acpi_ds_load2_begin_op(struct acpi_walk_state *walk_state,
parse_flags & ACPI_PARSE_MODULE_LEVEL)) {
break;
}
-
- /*lint -fallthrough */
+ fallthrough;
default:
diff --git a/drivers/acpi/acpica/exfldio.c b/drivers/acpi/acpica/exfldio.c index ade35ff1c7ba..9d1cabe0fed9 100644
--- a/drivers/acpi/acpica/exfldio.c
+++ b/drivers/acpi/acpica/exfldio.c
@@ -433,8 +433,7 @@ acpi_ex_field_datum_io(union acpi_operand_object *obj_desc,
* Now that the Bank has been selected, fall through to the
* region_field case and write the datum to the Operation Region
*/
-
- /*lint -fallthrough */
+ fallthrough;
case ACPI_TYPE_LOCAL_REGION_FIELD:
/*
diff --git a/drivers/acpi/acpica/exresop.c b/drivers/acpi/acpica/exresop.c index 4d1b22971d58..df48faa9a551 100644
--- a/drivers/acpi/acpica/exresop.c
+++ b/drivers/acpi/acpica/exresop.c
@@ -197,8 +197,7 @@ acpi_ex_resolve_operands(u16 opcode,
case ACPI_REFCLASS_DEBUG:
target_op = AML_DEBUG_OP;
-
- /*lint -fallthrough */
+ fallthrough;
case ACPI_REFCLASS_ARG:
case ACPI_REFCLASS_LOCAL:
@@ -264,7 +263,7 @@ acpi_ex_resolve_operands(u16 opcode,
* Else not a string - fall through to the normal Reference
* case below
*/
- /*lint -fallthrough */
+ fallthrough;
case ARGI_REFERENCE: /* References: */
case ARGI_INTEGER_REF:
diff --git a/drivers/acpi/acpica/exstore.c b/drivers/acpi/acpica/exstore.c index 3adc0a29d890..2067baa7c120 100644
--- a/drivers/acpi/acpica/exstore.c
+++ b/drivers/acpi/acpica/exstore.c
@@ -95,8 +95,7 @@ acpi_ex_store(union acpi_operand_object *source_desc,
if (dest_desc->common.flags & AOPOBJ_AML_CONSTANT) {
return_ACPI_STATUS(AE_OK);
}
-
- /*lint -fallthrough */
+ fallthrough;
default:
@@ -421,8 +420,7 @@ acpi_ex_store_object_to_node(union acpi_operand_object *source_desc,
}
break;
}
-
- /* Fallthrough */
+ fallthrough;
case ACPI_TYPE_DEVICE:
case ACPI_TYPE_EVENT:
diff --git a/drivers/acpi/acpica/hwgpe.c b/drivers/acpi/acpica/hwgpe.c index b13a4ed5bc63..fbfad80c8a53 100644
--- a/drivers/acpi/acpica/hwgpe.c
+++ b/drivers/acpi/acpica/hwgpe.c
@@ -166,8 +166,7 @@ acpi_hw_low_set_gpe(struct acpi_gpe_event_info *gpe_event_info, u32 action)
if (!(register_bit & gpe_register_info->enable_mask)) {
return (AE_BAD_PARAMETER);
}
-
- /*lint -fallthrough */
+ fallthrough;
case ACPI_GPE_ENABLE:
diff --git a/drivers/acpi/acpica/utdelete.c b/drivers/acpi/acpica/utdelete.c index 4c0d4e434196..8076e7947585 100644
--- a/drivers/acpi/acpica/utdelete.c
+++ b/drivers/acpi/acpica/utdelete.c
@@ -111,8 +111,7 @@ static void acpi_ut_delete_internal_obj(union acpi_operand_object *object)
(void)acpi_ev_delete_gpe_block(object->device.
gpe_block);
}
-
- /*lint -fallthrough */
+ fallthrough;
case ACPI_TYPE_PROCESSOR:
case ACPI_TYPE_THERMAL:
diff --git a/drivers/acpi/acpica/utprint.c b/drivers/acpi/acpica/utprint.c index 681c11f4af4e..f7e43baf5ff2 100644
--- a/drivers/acpi/acpica/utprint.c
+++ b/drivers/acpi/acpica/utprint.c
@@ -475,7 +475,7 @@ int vsnprintf(char *string, acpi_size size, const char *format, va_list args)
case 'X':
type |= ACPI_FORMAT_UPPER;
- /* FALLTHROUGH */
+ fallthrough;
case 'x':
--
2.29.2.222.g5d2a92d10f8-goog
5 months, 1 week
Re: [PATCH] ACPICA: fix -Wfallthrough
by Moore, Robert
I can do it this way:
In the global header actypes.h:
#ifndef ACPI_FALLTHROUGH
#define ACPI_FALLTHROUGH
#endif
In the gcc-specific header (acgcc.h):
#define ACPI_FALLTHROUGH __attribute__((__fallthrough__))
This would not be #defined in the MSVC-specific header (acmsvc.h) -- thus using the default (null) in actypes.h (The per-environment headers are always included first).
(We do all macros in upper case, prefixed with "ACPI_")
If you can update your patch to use ACPI_FALLTHROUGH, I can do the rest (above).
Thanks,
Bob
-----Original Message-----
From: Joe Perches <joe(a)perches.com>
Sent: Friday, November 13, 2020 8:30 AM
To: Miguel Ojeda <miguel.ojeda.sandonis(a)gmail.com>; Nick Desaulniers <ndesaulniers(a)google.com>
Cc: Moore, Robert <robert.moore(a)intel.com>; Kaneda, Erik <erik.kaneda(a)intel.com>; Wysocki, Rafael J <rafael.j.wysocki(a)intel.com>; Gustavo A . R . Silva <gustavoars(a)kernel.org>; clang-built-linux(a)googlegroups.com; Len Brown <lenb(a)kernel.org>; linux-acpi(a)vger.kernel.org; devel(a)acpica.org; linux-kernel(a)vger.kernel.org
Subject: Re: [PATCH] ACPICA: fix -Wfallthrough
On Fri, 2020-11-13 at 09:14 +0100, Miguel Ojeda wrote:
> On Fri, Nov 13, 2020 at 1:09 AM Nick Desaulniers
> <ndesaulniers(a)google.com> wrote:
> >
> > Thank you for the explicit diagnostics observed. Something fishy is
> > going on though, https://godbolt.org/z/Gbxbxa is how I expect MSVC
> > to handle include/linux/compiler_attributes.h.
> >
> > The C preprocessor should make it such that MSVC never sees
> > `__attribute__` or `__fallthrough__`; that it does begs the question.
> > That would seem to imply that `#if __has_attribute(__fallthrough__)`
> > somehow evaluates to true on MSVC, but my godbolt link shows it does
> > not.
> >
> > Could the upstream ACPICA project be #define'ing something that
> > could be altering this? (Or not #define'ing something?)
> >
> > Worst case, we could do as Joe Perches suggested and disable
> > -Wfallthrough for drivers/acpi/acpica/.
>
> I agree, something is fishy. MSVC has several flags for conformance
> and extensions support, including two full C preprocessors in newer
> versions; which means we might be missing something, but I don't see
> how the code in compiler_attributes.h could be confusing MSVC even in
> older non-conforming versions.
I believe this has nothing to do with linux and only to do with compiling acpica for other environments like Windows.
From: https://acpica.org/
The ACPI Component Architecture (ACPICA) project provides an operating system (OS)-independent reference implementation of the Advanced Configuration and Power Interface Specification (ACPI).
It can be easily adapted to execute under any host OS.
5 months, 1 week
ACPICA version 20201113 released
by Moore, Robert
13 November 2020. Summary of changes for version 20201113:
This release is available at https://acpica.org/downloads
1) ACPICA kernel-resident subsystem:
Interpreter: fixed a memory leak by using use existing buffer in _HID repair. There was a memory leak that occurred when a _CID object is defined as a package containing string objects. When _CID is checked for any possible repairs, it calls a helper function to repair _HID (because _CID basically contains multiple _HID entries). The _HID repair function assumes that string objects are standalone objects that are not contained inside of any packages. The _HID repair function replaced the string object with a brand new object and attempted to delete the old object by decrementing the reference count of the old object. Strings inside of packages have a reference count of 2 so the _HID repair function leaves this object in a dangling state and causes a memory leak. Instead of allocating a brand new object and removing the old object, use the existing object when repairing the _HID object.
Added function trace macros to improve namespace debugging. The namespace repair mechanism does not have function tracing macros. Add several trace macros to improve debuggability.
Handle "orphan" _REG methods for GPIO OpRegions. Before this change AcpiEvExecuteRegMethods() had special handling to handle "orphan" (no matching OpRegion declared) _REG methods for EC nodes. On Intel Cherry Trail devices there are 2 possible ACPI OpRegions for accessing GPIOs. The standard GeneralPurposeIo OpRegion and the Cherry Trail - specific UserDefined 0x9X OpRegions. Having 2 different types of OpRegions leads to potential issues with checks for OpRegion availability, or in other words checks if _REG has been called for the OpRegion which the ACPI code wants to use. Except for the "orphan" EC handling, ACPICA core does not call _REG on an ACPI node which does not define an OpRegion matching the type being registered; and the reference design DSDT, from which most Cherry Trail DSDTs are derived, does not define GeneralPurposeIo, nor UserDefined(0x93) OpRegions for the GPO2 (UID 3) device, because no pins were assigned ACPI controlled functions in the reference design. Together this leads to the perfect storm, at least on the Cherry Trail based Medion Akayo E1239T. This design does use a GPO2 pin from its ACPI code and has added the Cherry Trail specific UserDefined(0x93) opregion to its GPO2 ACPI node to access this pin. But it uses a "has _REG been called" availability check for the standard GeneralPurposeIo OpRegion. This clearly is a bug in the DSDT, but this does work under Windows. This issue leads to the intel vbtn driver reporting the device always being in tablet-mode at boot, even if it is in laptop mode. Which in turn causes userspace to ignore touchpad events. So in other words, this issue causes the touchpad to not work at boot. This change fixes this by extending the "orphan" _REG method handling to also apply to GPIO address-space handlers.
2) iASL Compiler/Disassembler and ACPICA tools:
iASL: Added more info to namespace dump file (-ln option). In a separate section of the dump file (after the main namespace dump), emit the full pathname for each namespace node, its type, and the ASL filename and line number where it is declared.
AcpiHelp: Added an option to display/decode iASL exceptions. Option is: -x [Hex Value] where "Hex Value" is the iASL exception code. If Hex Value is omitted, all iASL exceptions are displayed.
iASL: Use StringLiteral instead of StringData for some ASL macros. The use of the stringData rule allows for some "string" oriented opcodes (Such as ToString, ToHexString, etc.) None of which make sense with the macros in question. This change modifies the StringData part of the rule for these macros to a simple string literal - thus disallowing the use of ToString, ToHexString, etc.
The following ASL operators (macros) are affected:
EisaId
Fprintf
Printf
ToUuid
Unicode
Note: The MS compiler requires the use of string literals for these operators also.
iASL: Added a remark for an unknown UUID: ASL_MSG_UUID_NOT_FOUND. Search the list of "known" UUIDs for the input to the ToUUID macro.
Added 5 new UUIDs to the known UUID table. All related to NVDIMM and the NFIT table.
5 months, 1 week
[pm:bleeding-edge] BUILD SUCCESS 52d108cd060dea3403c01d460c2ffbc7eaaf4a9c
by kernel test robot
tree/branch: https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git bleeding-edge
branch HEAD: 52d108cd060dea3403c01d460c2ffbc7eaaf4a9c Merge branch 'powercap' into linux-next
elapsed time: 727m
configs tested: 212
configs skipped: 4
The following configs have been built successfully.
More configs may be tested in the coming days.
gcc tested configs:
arm defconfig
arm64 allyesconfig
arm64 defconfig
arm allyesconfig
arm allmodconfig
arm bcm2835_defconfig
arm shmobile_defconfig
arm spear6xx_defconfig
arm aspeed_g5_defconfig
ia64 generic_defconfig
sh rts7751r2dplus_defconfig
sh microdev_defconfig
powerpc katmai_defconfig
sh sh7770_generic_defconfig
sh hp6xx_defconfig
riscv allmodconfig
powerpc ge_imp3a_defconfig
sparc defconfig
sparc64 alldefconfig
sh dreamcast_defconfig
powerpc maple_defconfig
openrisc defconfig
powerpc acadia_defconfig
sh rsk7201_defconfig
mips workpad_defconfig
m68k apollo_defconfig
sh ecovec24-romimage_defconfig
riscv alldefconfig
arm pxa3xx_defconfig
powerpc pq2fads_defconfig
m68k amcore_defconfig
arm tegra_defconfig
powerpc mpc8315_rdb_defconfig
xtensa virt_defconfig
arm at91_dt_defconfig
sh espt_defconfig
sparc sparc64_defconfig
arm collie_defconfig
mips allyesconfig
sh se7722_defconfig
powerpc warp_defconfig
arm colibri_pxa270_defconfig
arm alldefconfig
arm h3600_defconfig
m68k m5407c3_defconfig
m68k mvme16x_defconfig
sh rsk7203_defconfig
mips loongson1b_defconfig
arm mxs_defconfig
powerpc mvme5100_defconfig
sh sdk7786_defconfig
mips bmips_be_defconfig
powerpc pseries_defconfig
mips rs90_defconfig
arm exynos_defconfig
m68k sun3_defconfig
nds32 alldefconfig
powerpc64 defconfig
arm imx_v6_v7_defconfig
arm cerfcube_defconfig
m68k mvme147_defconfig
powerpc adder875_defconfig
powerpc ebony_defconfig
xtensa smp_lx200_defconfig
microblaze mmu_defconfig
arm trizeps4_defconfig
arc axs101_defconfig
mips ip28_defconfig
powerpc powernv_defconfig
powerpc tqm8555_defconfig
ia64 bigsur_defconfig
ia64 alldefconfig
powerpc mpc885_ads_defconfig
sh rts7751r2d1_defconfig
h8300 edosk2674_defconfig
arm shannon_defconfig
powerpc asp8347_defconfig
powerpc wii_defconfig
sh sh2007_defconfig
mips malta_kvm_guest_defconfig
i386 alldefconfig
mips maltaup_defconfig
arm mv78xx0_defconfig
mips malta_defconfig
arm footbridge_defconfig
xtensa defconfig
mips decstation_r4k_defconfig
arm nhk8815_defconfig
arm pxa_defconfig
nios2 alldefconfig
xtensa xip_kc705_defconfig
arm ep93xx_defconfig
arm multi_v4t_defconfig
arm u300_defconfig
c6x evmc6457_defconfig
powerpc socrates_defconfig
powerpc mpc832x_rdb_defconfig
powerpc lite5200b_defconfig
mips lemote2f_defconfig
powerpc mpc832x_mds_defconfig
arm assabet_defconfig
arm pxa168_defconfig
microblaze defconfig
powerpc ppc6xx_defconfig
powerpc currituck_defconfig
powerpc tqm8548_defconfig
s390 debug_defconfig
arm socfpga_defconfig
m68k m5307c3_defconfig
ia64 gensparse_defconfig
m68k stmark2_defconfig
m68k alldefconfig
powerpc ep88xc_defconfig
arc haps_hs_defconfig
arm jornada720_defconfig
sh allmodconfig
arm spitz_defconfig
powerpc pmac32_defconfig
arm viper_defconfig
powerpc obs600_defconfig
arm64 alldefconfig
sh sh7785lcr_defconfig
arm orion5x_defconfig
ia64 allmodconfig
ia64 defconfig
ia64 allyesconfig
m68k allmodconfig
m68k defconfig
m68k allyesconfig
nios2 defconfig
arc allyesconfig
nds32 allnoconfig
c6x allyesconfig
nds32 defconfig
nios2 allyesconfig
csky defconfig
alpha defconfig
alpha allyesconfig
xtensa allyesconfig
h8300 allyesconfig
arc defconfig
parisc defconfig
s390 allyesconfig
parisc allyesconfig
s390 defconfig
i386 allyesconfig
sparc allyesconfig
i386 defconfig
mips allmodconfig
powerpc allyesconfig
powerpc allmodconfig
powerpc allnoconfig
i386 randconfig-a006-20201112
i386 randconfig-a005-20201112
i386 randconfig-a002-20201112
i386 randconfig-a001-20201112
i386 randconfig-a003-20201112
i386 randconfig-a004-20201112
i386 randconfig-a006-20201111
i386 randconfig-a005-20201111
i386 randconfig-a002-20201111
i386 randconfig-a001-20201111
i386 randconfig-a003-20201111
i386 randconfig-a004-20201111
i386 randconfig-a006-20201113
i386 randconfig-a005-20201113
i386 randconfig-a002-20201113
i386 randconfig-a001-20201113
i386 randconfig-a003-20201113
i386 randconfig-a004-20201113
x86_64 randconfig-a015-20201111
x86_64 randconfig-a011-20201111
x86_64 randconfig-a014-20201111
x86_64 randconfig-a013-20201111
x86_64 randconfig-a016-20201111
x86_64 randconfig-a012-20201111
i386 randconfig-a012-20201113
i386 randconfig-a014-20201113
i386 randconfig-a016-20201113
i386 randconfig-a011-20201113
i386 randconfig-a015-20201113
i386 randconfig-a013-20201113
i386 randconfig-a012-20201111
i386 randconfig-a014-20201111
i386 randconfig-a016-20201111
i386 randconfig-a011-20201111
i386 randconfig-a015-20201111
i386 randconfig-a013-20201111
riscv nommu_k210_defconfig
riscv allyesconfig
riscv nommu_virt_defconfig
riscv allnoconfig
riscv defconfig
riscv rv32_defconfig
x86_64 rhel
x86_64 allyesconfig
x86_64 rhel-7.6-kselftests
x86_64 defconfig
x86_64 rhel-8.3
x86_64 kexec
clang tested configs:
x86_64 randconfig-a003-20201111
x86_64 randconfig-a005-20201111
x86_64 randconfig-a004-20201111
x86_64 randconfig-a002-20201111
x86_64 randconfig-a006-20201111
x86_64 randconfig-a001-20201111
x86_64 randconfig-a003-20201113
x86_64 randconfig-a005-20201113
x86_64 randconfig-a004-20201113
x86_64 randconfig-a002-20201113
x86_64 randconfig-a006-20201113
x86_64 randconfig-a001-20201113
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
5 months, 1 week