[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202112230517.xGNBVseT-lkp@intel.com>
Date: Thu, 23 Dec 2021 05:53:59 +0800
From: kernel test robot <lkp@...el.com>
To: Sudeep Holla <sudeep.holla@....com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
ACPI Devel Maling List <linux-acpi@...r.kernel.org>
Cc: kbuild-all@...ts.01.org, Sudeep Holla <sudeep.holla@....com>,
"Rafael J . Wysocki" <rafael@...nel.org>
Subject: Re: [PATCH] ACPI: PCC: Implement OperationRegion handler for the PCC
Type 3 subtype
Hi Sudeep,
I love your patch! Yet something to improve:
[auto build test ERROR on rafael-pm/linux-next]
[also build test ERROR on linux/master linus/master v5.16-rc6 next-20211222]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Sudeep-Holla/ACPI-PCC-Implement-OperationRegion-handler-for-the-PCC-Type-3-subtype/20211223-030953
base: https://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm.git linux-next
config: arm64-randconfig-r034-20211222 (https://download.01.org/0day-ci/archive/20211223/202112230517.xGNBVseT-lkp@intel.com/config)
compiler: aarch64-linux-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/0day-ci/linux/commit/d47183476e4a00211d39cd175b92fe5c11fbb65a
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Sudeep-Holla/ACPI-PCC-Implement-OperationRegion-handler-for-the-PCC-Type-3-subtype/20211223-030953
git checkout d47183476e4a00211d39cd175b92fe5c11fbb65a
# save the config file to linux build tree
mkdir build_dir
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arm64 SHELL=/bin/bash drivers/acpi/
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>
All errors (new ones prefixed by >>):
>> drivers/acpi/pcc_opregion.c:22:30: error: field 'ctx' has incomplete type
22 | struct acpi_pcc_info ctx;
| ^~~
In file included from include/acpi/acpi.h:29,
from include/linux/acpi.h:22,
from drivers/acpi/pcc_opregion.c:10:
drivers/acpi/pcc_opregion.c: In function 'acpi_pcc_opregion_setup':
>> include/acpi/acoutput.h:398:26: error: implicit declaration of function 'acpi_ut_status_exit'; did you mean 'acpi_irq_stats_init'? [-Werror=implicit-function-declaration]
398 | ACPI_TRACE_EXIT (acpi_ut_status_exit, acpi_status, status)
| ^~~~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:281:44: note: in definition of macro 'ACPI_DO_WHILE0'
281 | #define ACPI_DO_WHILE0(a) do a while(0)
| ^
include/acpi/acoutput.h:398:9: note: in expansion of macro 'ACPI_TRACE_EXIT'
398 | ACPI_TRACE_EXIT (acpi_ut_status_exit, acpi_status, status)
| ^~~~~~~~~~~~~~~
drivers/acpi/pcc_opregion.c:44:17: note: in expansion of macro 'return_ACPI_STATUS'
44 | return_ACPI_STATUS(AE_NO_MEMORY);
| ^~~~~~~~~~~~~~~~~~
>> include/acpi/acoutput.h:258:43: error: '_acpi_module_name' undeclared (first use in this function); did you mean 'quota_module_name'?
258 | __LINE__, ACPI_GET_FUNCTION_NAME, _acpi_module_name, _COMPONENT
| ^~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:281:44: note: in definition of macro 'ACPI_DO_WHILE0'
281 | #define ACPI_DO_WHILE0(a) do a while(0)
| ^
include/acpi/acoutput.h:375:27: note: in expansion of macro 'ACPI_DEBUG_PARAMETERS'
375 | function (ACPI_DEBUG_PARAMETERS, _param); \
| ^~~~~~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:398:9: note: in expansion of macro 'ACPI_TRACE_EXIT'
398 | ACPI_TRACE_EXIT (acpi_ut_status_exit, acpi_status, status)
| ^~~~~~~~~~~~~~~
drivers/acpi/pcc_opregion.c:44:17: note: in expansion of macro 'return_ACPI_STATUS'
44 | return_ACPI_STATUS(AE_NO_MEMORY);
| ^~~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:258:43: note: each undeclared identifier is reported only once for each function it appears in
258 | __LINE__, ACPI_GET_FUNCTION_NAME, _acpi_module_name, _COMPONENT
| ^~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:281:44: note: in definition of macro 'ACPI_DO_WHILE0'
281 | #define ACPI_DO_WHILE0(a) do a while(0)
| ^
include/acpi/acoutput.h:375:27: note: in expansion of macro 'ACPI_DEBUG_PARAMETERS'
375 | function (ACPI_DEBUG_PARAMETERS, _param); \
| ^~~~~~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:398:9: note: in expansion of macro 'ACPI_TRACE_EXIT'
398 | ACPI_TRACE_EXIT (acpi_ut_status_exit, acpi_status, status)
| ^~~~~~~~~~~~~~~
drivers/acpi/pcc_opregion.c:44:17: note: in expansion of macro 'return_ACPI_STATUS'
44 | return_ACPI_STATUS(AE_NO_MEMORY);
| ^~~~~~~~~~~~~~~~~~
>> include/acpi/acoutput.h:258:62: error: '_COMPONENT' undeclared (first use in this function)
258 | __LINE__, ACPI_GET_FUNCTION_NAME, _acpi_module_name, _COMPONENT
| ^~~~~~~~~~
include/acpi/acoutput.h:281:44: note: in definition of macro 'ACPI_DO_WHILE0'
281 | #define ACPI_DO_WHILE0(a) do a while(0)
| ^
include/acpi/acoutput.h:375:27: note: in expansion of macro 'ACPI_DEBUG_PARAMETERS'
375 | function (ACPI_DEBUG_PARAMETERS, _param); \
| ^~~~~~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:398:9: note: in expansion of macro 'ACPI_TRACE_EXIT'
398 | ACPI_TRACE_EXIT (acpi_ut_status_exit, acpi_status, status)
| ^~~~~~~~~~~~~~~
drivers/acpi/pcc_opregion.c:44:17: note: in expansion of macro 'return_ACPI_STATUS'
44 | return_ACPI_STATUS(AE_NO_MEMORY);
| ^~~~~~~~~~~~~~~~~~
>> drivers/acpi/pcc_opregion.c:48:31: error: invalid use of undefined type 'struct acpi_pcc_info'
48 | data->ctx.length = ctx->length;
| ^~
drivers/acpi/pcc_opregion.c:49:36: error: invalid use of undefined type 'struct acpi_pcc_info'
49 | data->ctx.subspace_id = ctx->subspace_id;
| ^~
drivers/acpi/pcc_opregion.c:50:40: error: invalid use of undefined type 'struct acpi_pcc_info'
50 | data->ctx.internal_buffer = ctx->internal_buffer;
| ^~
drivers/acpi/pcc_opregion.c:53:65: error: invalid use of undefined type 'struct acpi_pcc_info'
53 | data->pcc_chan = pcc_mbox_request_channel(&data->cl, ctx->subspace_id);
| ^~
In file included from include/linux/kernel.h:20,
from drivers/acpi/pcc_opregion.c:9:
drivers/acpi/pcc_opregion.c:56:27: error: invalid use of undefined type 'struct acpi_pcc_info'
56 | ctx->subspace_id);
| ^~
include/linux/printk.h:422:33: note: in definition of macro 'printk_index_wrap'
422 | _p_func(_fmt, ##__VA_ARGS__); \
| ^~~~~~~~~~~
include/linux/printk.h:493:9: note: in expansion of macro 'printk'
493 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~
drivers/acpi/pcc_opregion.c:55:17: note: in expansion of macro 'pr_err'
55 | pr_err("Failed to find PCC channel for subspace %d\n",
| ^~~~~~
drivers/acpi/pcc_opregion.c:65:27: error: invalid use of undefined type 'struct acpi_pcc_info'
65 | ctx->subspace_id);
| ^~
include/linux/printk.h:422:33: note: in definition of macro 'printk_index_wrap'
422 | _p_func(_fmt, ##__VA_ARGS__); \
| ^~~~~~~~~~~
include/linux/printk.h:493:9: note: in expansion of macro 'printk'
493 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__)
| ^~~~~~
drivers/acpi/pcc_opregion.c:64:17: note: in expansion of macro 'pr_err'
64 | pr_err("Failed to ioremap PCC comm region mem for %d\n",
| ^~~~~~
In file included from include/acpi/acpi.h:29,
from include/linux/acpi.h:22,
from drivers/acpi/pcc_opregion.c:10:
drivers/acpi/pcc_opregion.c: In function 'acpi_pcc_opregion_space_handler':
>> include/acpi/acoutput.h:258:43: error: '_acpi_module_name' undeclared (first use in this function); did you mean 'quota_module_name'?
258 | __LINE__, ACPI_GET_FUNCTION_NAME, _acpi_module_name, _COMPONENT
| ^~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:281:44: note: in definition of macro 'ACPI_DO_WHILE0'
281 | #define ACPI_DO_WHILE0(a) do a while(0)
| ^
include/acpi/acoutput.h:375:27: note: in expansion of macro 'ACPI_DEBUG_PARAMETERS'
375 | function (ACPI_DEBUG_PARAMETERS, _param); \
| ^~~~~~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:398:9: note: in expansion of macro 'ACPI_TRACE_EXIT'
398 | ACPI_TRACE_EXIT (acpi_ut_status_exit, acpi_status, status)
| ^~~~~~~~~~~~~~~
drivers/acpi/pcc_opregion.c:88:17: note: in expansion of macro 'return_ACPI_STATUS'
88 | return_ACPI_STATUS(AE_ERROR);
| ^~~~~~~~~~~~~~~~~~
>> include/acpi/acoutput.h:258:62: error: '_COMPONENT' undeclared (first use in this function)
258 | __LINE__, ACPI_GET_FUNCTION_NAME, _acpi_module_name, _COMPONENT
| ^~~~~~~~~~
include/acpi/acoutput.h:281:44: note: in definition of macro 'ACPI_DO_WHILE0'
281 | #define ACPI_DO_WHILE0(a) do a while(0)
| ^
include/acpi/acoutput.h:375:27: note: in expansion of macro 'ACPI_DEBUG_PARAMETERS'
375 | function (ACPI_DEBUG_PARAMETERS, _param); \
| ^~~~~~~~~~~~~~~~~~~~~
include/acpi/acoutput.h:398:9: note: in expansion of macro 'ACPI_TRACE_EXIT'
398 | ACPI_TRACE_EXIT (acpi_ut_status_exit, acpi_status, status)
| ^~~~~~~~~~~~~~~
drivers/acpi/pcc_opregion.c:88:17: note: in expansion of macro 'return_ACPI_STATUS'
88 | return_ACPI_STATUS(AE_ERROR);
| ^~~~~~~~~~~~~~~~~~
drivers/acpi/pcc_opregion.c: At top level:
>> drivers/acpi/pcc_opregion.c:25:22: error: storage size of 'pcc_ctx' isn't known
25 | struct acpi_pcc_info pcc_ctx;
| ^~~~~~~
cc1: some warnings being treated as errors
vim +/ctx +22 drivers/acpi/pcc_opregion.c
16
17 struct pcc_data {
18 struct pcc_mbox_chan *pcc_chan;
19 void __iomem *pcc_comm_addr;
20 struct completion done;
21 struct mbox_client cl;
> 22 struct acpi_pcc_info ctx;
23 };
24
> 25 struct acpi_pcc_info pcc_ctx;
26
27 static void pcc_rx_callback(struct mbox_client *cl, void *m)
28 {
29 struct pcc_data *data = container_of(cl, struct pcc_data, cl);
30
31 complete(&data->done);
32 }
33
34 static acpi_status
35 acpi_pcc_opregion_setup(acpi_handle region_handle, u32 function,
36 void *handler_context, void **region_context)
37 {
38 struct pcc_data *data;
39 struct acpi_pcc_info *ctx = handler_context;
40 struct pcc_mbox_chan *pcc_chan;
41
42 data = kzalloc(sizeof(*data), GFP_KERNEL);
43 if (!data)
44 return_ACPI_STATUS(AE_NO_MEMORY);
45
46 data->cl.rx_callback = pcc_rx_callback;
47 data->cl.knows_txdone = true;
> 48 data->ctx.length = ctx->length;
49 data->ctx.subspace_id = ctx->subspace_id;
50 data->ctx.internal_buffer = ctx->internal_buffer;
51
52 init_completion(&data->done);
53 data->pcc_chan = pcc_mbox_request_channel(&data->cl, ctx->subspace_id);
54 if (IS_ERR(data->pcc_chan)) {
55 pr_err("Failed to find PCC channel for subspace %d\n",
56 ctx->subspace_id);
57 return_ACPI_STATUS(AE_NOT_FOUND);
58 }
59
60 pcc_chan = data->pcc_chan;
61 data->pcc_comm_addr = acpi_os_ioremap(pcc_chan->shmem_base_addr,
62 pcc_chan->shmem_size);
63 if (!data->pcc_comm_addr) {
64 pr_err("Failed to ioremap PCC comm region mem for %d\n",
65 ctx->subspace_id);
66 return_ACPI_STATUS(AE_NO_MEMORY);
67 }
68
69 *region_context = data;
70 return_ACPI_STATUS(AE_OK);
71 }
72
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
Powered by blists - more mailing lists