Re: [PATCH RFC 02/12] vdpa: split vdpasim to core and net modules
by kernel test robot
Hi Stefano,
[FYI, it's a private test report for your RFC patch.]
[auto build test WARNING on linus/master]
[also build test WARNING on v5.10-rc3 next-20201113]
[cannot apply to vhost/linux-next linux/master]
[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/Stefano-Garzarella/vdpa-generali...
base: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 585e5b17b92dead8a3aca4e3c9876fbca5f7e0ba
config: x86_64-randconfig-a005-20201113 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 9e0c35655b6e8186baef8840b26ba4090503b554)
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
# install x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://github.com/0day-ci/linux/commit/12adecc2babdd7bf8e2bd80ab956da09d...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Stefano-Garzarella/vdpa-generalize-vdpa-simulator-and-add-block-device/20201113-215247
git checkout 12adecc2babdd7bf8e2bd80ab956da09ddd29355
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/vdpa/vdpa_sim/vdpa_sim.c:211:6: warning: variable 'dev' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
if (!vdpasim->config)
^~~~~~~~~~~~~~~~
drivers/vdpa/vdpa_sim/vdpa_sim.c:242:13: note: uninitialized use occurs here
put_device(dev);
^~~
drivers/vdpa/vdpa_sim/vdpa_sim.c:211:2: note: remove the 'if' if its condition is always false
if (!vdpasim->config)
^~~~~~~~~~~~~~~~~~~~~
drivers/vdpa/vdpa_sim/vdpa_sim.c:189:20: note: initialize the variable 'dev' to silence this warning
struct device *dev;
^
= NULL
1 warning generated.
vim +211 drivers/vdpa/vdpa_sim/vdpa_sim.c
183
184 struct vdpasim *vdpasim_create(struct vdpasim_init_attr *attr)
185 {
186 const struct vdpa_config_ops *ops;
187 struct vdpasim *vdpasim;
188 u32 device_id;
189 struct device *dev;
190 int i, size, ret = -ENOMEM;
191
192 device_id = attr->device_id;
193 /* Currently, we only accept the network and block devices. */
194 if (device_id != VIRTIO_ID_NET && device_id != VIRTIO_ID_BLOCK)
195 return ERR_PTR(-EOPNOTSUPP);
196
197 if (attr->batch_mapping)
198 ops = &vdpasim_batch_config_ops;
199 else
200 ops = &vdpasim_config_ops;
201
202 vdpasim = vdpa_alloc_device(struct vdpasim, vdpa, NULL, ops, VDPASIM_VQ_NUM);
203 if (!vdpasim)
204 goto err_alloc;
205
206 if (device_id == VIRTIO_ID_NET)
207 size = sizeof(struct virtio_net_config);
208 else
209 size = sizeof(struct virtio_blk_config);
210 vdpasim->config = kzalloc(size, GFP_KERNEL);
> 211 if (!vdpasim->config)
212 goto err_iommu;
213
214 vdpasim->device_id = device_id;
215 vdpasim->supported_features = attr->features;
216 INIT_WORK(&vdpasim->work, attr->work_fn);
217 spin_lock_init(&vdpasim->lock);
218 spin_lock_init(&vdpasim->iommu_lock);
219
220 dev = &vdpasim->vdpa.dev;
221 dev->dma_mask = &dev->coherent_dma_mask;
222 if (dma_set_mask_and_coherent(dev, DMA_BIT_MASK(64)))
223 goto err_iommu;
224 set_dma_ops(dev, &vdpasim_dma_ops);
225
226 vdpasim->iommu = vhost_iotlb_alloc(2048, 0);
227 if (!vdpasim->iommu)
228 goto err_iommu;
229
230 vdpasim->buffer = kmalloc(PAGE_SIZE, GFP_KERNEL);
231 if (!vdpasim->buffer)
232 goto err_iommu;
233
234 for (i = 0; i < VDPASIM_VQ_NUM; i++)
235 vringh_set_iotlb(&vdpasim->vqs[i].vring, vdpasim->iommu);
236
237 vdpasim->vdpa.dma_dev = dev;
238
239 return vdpasim;
240
241 err_iommu:
242 put_device(dev);
243 err_alloc:
244 return ERR_PTR(ret);
245 }
246 EXPORT_SYMBOL_GPL(vdpasim_create);
247
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 10 months
Re: [PATCH v4 05/10] ASoC: SOF: Intel: Define ops for client registration
by kernel test robot
Hi Dave,
I love your patch! Perhaps something to improve:
[auto build test WARNING on driver-core/driver-core-testing]
[also build test WARNING on sound/for-next linus/master v5.10-rc3]
[cannot apply to asoc/for-next next-20201113]
[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/Dave-Ertman/Auxiliary-bus-implem...
base: https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git 33c0c9bdf7a59051a654cd98b7d2b48ce0080967
config: xtensa-allyesconfig (attached as .config)
compiler: xtensa-linux-gcc (GCC) 9.3.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/f37759ce865d124754c1cbdd42cd5e9d7...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Dave-Ertman/Auxiliary-bus-implementation-and-SOF-multi-client-support/20201114-002359
git checkout f37759ce865d124754c1cbdd42cd5e9d77924af8
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=xtensa
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> sound/soc/sof/intel/apl.c:158:1: warning: data definition has no type or storage class
158 | MODULE_IMPORT_NS(SND_SOC_SOF_INTEL_CLIENT);
| ^~~~~~~~~~~~~~~~
sound/soc/sof/intel/apl.c:158:1: error: type defaults to 'int' in declaration of 'MODULE_IMPORT_NS' [-Werror=implicit-int]
>> sound/soc/sof/intel/apl.c:158:1: warning: parameter names (without types) in function declaration
cc1: some warnings being treated as errors
--
>> sound/soc/sof/intel/cnl.c:411:1: warning: data definition has no type or storage class
411 | MODULE_IMPORT_NS(SND_SOC_SOF_INTEL_CLIENT);
| ^~~~~~~~~~~~~~~~
sound/soc/sof/intel/cnl.c:411:1: error: type defaults to 'int' in declaration of 'MODULE_IMPORT_NS' [-Werror=implicit-int]
>> sound/soc/sof/intel/cnl.c:411:1: warning: parameter names (without types) in function declaration
cc1: some warnings being treated as errors
vim +158 sound/soc/sof/intel/apl.c
142
143 const struct sof_intel_dsp_desc apl_chip_info = {
144 /* Apollolake */
145 .cores_num = 2,
146 .init_core_mask = 1,
147 .host_managed_cores_mask = GENMASK(1, 0),
148 .ipc_req = HDA_DSP_REG_HIPCI,
149 .ipc_req_mask = HDA_DSP_REG_HIPCI_BUSY,
150 .ipc_ack = HDA_DSP_REG_HIPCIE,
151 .ipc_ack_mask = HDA_DSP_REG_HIPCIE_DONE,
152 .ipc_ctl = HDA_DSP_REG_HIPCCTL,
153 .rom_init_timeout = 150,
154 .ssp_count = APL_SSP_COUNT,
155 .ssp_base_offset = APL_SSP_BASE_OFFSET,
156 };
157 EXPORT_SYMBOL_NS(apl_chip_info, SND_SOC_SOF_INTEL_HDA_COMMON);
> 158 MODULE_IMPORT_NS(SND_SOC_SOF_INTEL_CLIENT);
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 10 months
[linux-next:master 4466/5794] drivers/gpu/drm/amd/amdgpu/../display/dc/dcn21/dcn21_dccg.c:46:6: warning: no previous prototype for 'dccg21_update_dpp_dto'
by kernel test robot
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: 92edc4aef86780a8ad01b092c6d6630bb3cb423d
commit: c07cbc1f04ecba00f99e313de3190db5e7438e81 [4466/5794] drm/amd/display: update dpp dto phase and modulo.
config: i386-randconfig-a011-20201111 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/commi...
git remote add linux-next https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
git fetch --no-tags linux-next master
git checkout c07cbc1f04ecba00f99e313de3190db5e7438e81
# save the attached .config to linux build tree
make W=1 ARCH=i386
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
>> drivers/gpu/drm/amd/amdgpu/../display/dc/dcn21/dcn21_dccg.c:46:6: warning: no previous prototype for 'dccg21_update_dpp_dto' [-Wmissing-prototypes]
46 | void dccg21_update_dpp_dto(struct dccg *dccg, int dpp_inst, int req_dppclk)
| ^~~~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/inc/core_types.h:86,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dcn21/dcn21_dccg.c:27:
drivers/gpu/drm/amd/amdgpu/../display/dc/inc/hw/dpp.h:50:42: warning: 'dpp_input_csc_matrix' defined but not used [-Wunused-const-variable=]
50 | static const struct dpp_input_csc_matrix dpp_input_csc_matrix[] = {
| ^~~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/inc/core_types.h:32,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dcn21/dcn21_dccg.c:27:
drivers/gpu/drm/amd/amdgpu/../display/include/ddc_service_types.h:126:22: warning: 'DP_DVI_CONVERTER_ID_5' defined but not used [-Wunused-const-variable=]
126 | static const uint8_t DP_DVI_CONVERTER_ID_5[] = "3393N2";
| ^~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/ddc_service_types.h:125:22: warning: 'DP_DVI_CONVERTER_ID_4' defined but not used [-Wunused-const-variable=]
125 | static const uint8_t DP_DVI_CONVERTER_ID_4[] = "m2DVIa";
| ^~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/ddc_service_types.h:123:22: warning: 'DP_VGA_LVDS_CONVERTER_ID_3' defined but not used [-Wunused-const-variable=]
123 | static const uint8_t DP_VGA_LVDS_CONVERTER_ID_3[] = "dnomlA";
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/ddc_service_types.h:121:22: warning: 'DP_VGA_LVDS_CONVERTER_ID_2' defined but not used [-Wunused-const-variable=]
121 | static const uint8_t DP_VGA_LVDS_CONVERTER_ID_2[] = "sivarT";
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/amd/amdgpu/../display/dc/dc_types.h:33,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dm_services_types.h:30,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dm_services.h:35,
from drivers/gpu/drm/amd/amdgpu/../display/dc/inc/reg_helper.h:28,
from drivers/gpu/drm/amd/amdgpu/../display/dc/dcn21/dcn21_dccg.c:26:
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:76:32: warning: 'dc_fixpt_ln2_div_2' defined but not used [-Wunused-const-variable=]
76 | static const struct fixed31_32 dc_fixpt_ln2_div_2 = { 1488522236LL };
| ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:75:32: warning: 'dc_fixpt_ln2' defined but not used [-Wunused-const-variable=]
75 | static const struct fixed31_32 dc_fixpt_ln2 = { 2977044471LL };
| ^~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:74:32: warning: 'dc_fixpt_e' defined but not used [-Wunused-const-variable=]
74 | static const struct fixed31_32 dc_fixpt_e = { 11674931555LL };
| ^~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:73:32: warning: 'dc_fixpt_two_pi' defined but not used [-Wunused-const-variable=]
73 | static const struct fixed31_32 dc_fixpt_two_pi = { 26986075409LL };
| ^~~~~~~~~~~~~~~
drivers/gpu/drm/amd/amdgpu/../display/include/fixed31_32.h:72:32: warning: 'dc_fixpt_pi' defined but not used [-Wunused-const-variable=]
72 | static const struct fixed31_32 dc_fixpt_pi = { 13493037705LL };
| ^~~~~~~~~~~
vim +/dccg21_update_dpp_dto +46 drivers/gpu/drm/amd/amdgpu/../display/dc/dcn21/dcn21_dccg.c
30
31 #define TO_DCN_DCCG(dccg)\
32 container_of(dccg, struct dcn_dccg, base)
33
34 #define REG(reg) \
35 (dccg_dcn->regs->reg)
36
37 #undef FN
38 #define FN(reg_name, field_name) \
39 dccg_dcn->dccg_shift->field_name, dccg_dcn->dccg_mask->field_name
40
41 #define CTX \
42 dccg_dcn->base.ctx
43 #define DC_LOGGER \
44 dccg->ctx->logger
45
> 46 void dccg21_update_dpp_dto(struct dccg *dccg, int dpp_inst, int req_dppclk)
47 {
48 struct dcn_dccg *dccg_dcn = TO_DCN_DCCG(dccg);
49
50 if (dccg->ref_dppclk) {
51 int ref_dppclk = dccg->ref_dppclk;
52 int modulo = ref_dppclk / 10000;
53
54 if (req_dppclk) {
55 int phase;
56
57 /*
58 * program DPP DTO phase and modulo as below
59 * phase = dpp_pipe_clk_mhz / 10
60 * module = dpp_global_clk_mhz / 10
61 * dmub FW will read phase value to
62 * determine minimum dpp clk and notify smu
63 * to set clks for more power saving in PSR state
64 */
65 phase = (req_dppclk + 9999) / 10000;
66
67 if (phase > 0xff) {
68 ASSERT(false);
69 phase = 0xff;
70 }
71
72 REG_SET_2(DPPCLK_DTO_PARAM[dpp_inst], 0,
73 DPPCLK0_DTO_PHASE, phase,
74 DPPCLK0_DTO_MODULO, modulo);
75 REG_UPDATE(DPPCLK_DTO_CTRL,
76 DPPCLK_DTO_ENABLE[dpp_inst], 1);
77 } else {
78 /*
79 * set phase to 10 if dpp isn't used to
80 * prevent hard hang if access dpp register
81 * on unused pipe
82 */
83 REG_SET_2(DPPCLK_DTO_PARAM[dpp_inst], 0,
84 DPPCLK0_DTO_PHASE, 10,
85 DPPCLK0_DTO_MODULO, modulo);
86
87 REG_UPDATE(DPPCLK_DTO_CTRL,
88 DPPCLK_DTO_ENABLE[dpp_inst], 0);
89 }
90 }
91
92 dccg->pipe_dppclk_khz[dpp_inst] = req_dppclk;
93 }
94
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 10 months
[intel-linux-intel-lts:4.19/android_q 1/1] drivers/soc/qcom/smem.c:543:36: error: expected ';' before 'struct'
by kernel test robot
tree: https://github.com/intel/linux-intel-lts.git 4.19/android_q
head: e1d37d2e69f096cf753fd700c269b87eea8b11c3
commit: e1d37d2e69f096cf753fd700c269b87eea8b11c3 [1/1] soc: qcom: smem: validate fields of shared structures Structures in shared memory that can be modified by remote processors may have untrusted values, they should be validated before use.
config: arm64-allyesconfig (attached as .config)
compiler: aarch64-linux-gcc (GCC) 9.3.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/intel/linux-intel-lts/commit/e1d37d2e69f096cf753fd700c...
git remote add intel-linux-intel-lts https://github.com/intel/linux-intel-lts.git
git fetch --no-tags intel-linux-intel-lts 4.19/android_q
git checkout e1d37d2e69f096cf753fd700c269b87eea8b11c3
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
drivers/soc/qcom/smem.c: In function 'qcom_smem_get_private':
>> drivers/soc/qcom/smem.c:543:36: error: expected ';' before 'struct'
543 | struct smem_partition_header *phdr
| ^
| ;
544 | struct smem_private_entry *e, *end;
| ~~~~~~
>> drivers/soc/qcom/smem.c:551:2: error: 'phdr' undeclared (first use in this function)
551 | phdr = ptable_entry_to_phdr(entry);
| ^~~~
drivers/soc/qcom/smem.c:551:2: note: each undeclared identifier is reported only once for each function it appears in
vim +543 drivers/soc/qcom/smem.c
537
538 static void *qcom_smem_get_private(struct qcom_smem *smem,
539 struct smem_ptable_entry *entry,
540 unsigned item,
541 size_t *size)
542 {
> 543 struct smem_partition_header *phdr
544 struct smem_private_entry *e, *end;
545 void *item_ptr, *p_end;
546 u32 partition_size;
547 size_t cacheline;
548 u32 padding_data;
549 u32 e_size;
550
> 551 phdr = ptable_entry_to_phdr(entry);
552 partition_size = le32_to_cpu(entry->size);
553 p_end = (void *)phdr + partition_size;
554 cacheline = le32_to_cpu(entry->cacheline);
555
556 e = phdr_to_first_uncached_entry(phdr);
557 end = phdr_to_last_uncached_entry(phdr);
558 if (WARN_ON((void *)end > p_end))
559 return ERR_PTR(-EINVAL);
560
561 while (e < end) {
562 if (e->canary != SMEM_PRIVATE_CANARY)
563 goto invalid_canary;
564
565 if (le16_to_cpu(e->item) == item) {
566 if (size != NULL) {
567 e_size = le32_to_cpu(e->size);
568 padding_data = le16_to_cpu(e->padding_data);
569
570 if (e_size < partition_size
571 && padding_data < e_size)
572 *size = e_size - padding_data;
573 else
574 return ERR_PTR(-EINVAL);
575 }
576
577 item_ptr = uncached_entry_to_item(e);
578 if (WARN_ON(item_ptr > p_end))
579 return ERR_PTR(-EINVAL);
580
581 return item_ptr;
582 }
583 e = uncached_entry_next(e);
584 }
585 if (WARN_ON((void *)e > p_end))
586 return ERR_PTR(-EINVAL);
587
588 /* Item was not found in the uncached list, search the cached list */
589
590 e = phdr_to_first_cached_entry(phdr, cacheline);
591 end = phdr_to_last_cached_entry(phdr);
592
593 if (WARN_ON((void *)e < (void *)phdr || (void *)end > p_end))
594 return ERR_PTR(-EINVAL);
595
596 while (e > end) {
597 if (e->canary != SMEM_PRIVATE_CANARY)
598 goto invalid_canary;
599
600 if (le16_to_cpu(e->item) == item) {
601 if (size != NULL) {
602 e_size = le32_to_cpu(e->size);
603 padding_data = le16_to_cpu(e->padding_data);
604
605 if (e_size < partition_size
606 && padding_data < e_size)
607 *size = e_size - padding_data;
608 else
609 return ERR_PTR(-EINVAL);
610 }
611
612 item_ptr = cached_entry_to_item(e);
613 if (WARN_ON(item_ptr < (void *)phdr))
614 return ERR_PTR(-EINVAL);
615
616 return item_ptr;
617 }
618 e = cached_entry_next(e, cacheline);
619 }
620 if (WARN_ON((void *)e < (void *)phdr))
621 return ERR_PTR(-EINVAL);
622
623 return ERR_PTR(-ENOENT);
624
625 invalid_canary:
626 dev_err(smem->dev, "Found invalid canary in hosts %hu:%hu partition\n",
627 le16_to_cpu(phdr->host0), le16_to_cpu(phdr->host1));
628
629 return ERR_PTR(-EINVAL);
630 }
631
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 10 months
Re: [PATCH 19/19] rcu/nocb: Detect unsafe checks for offloaded rdp
by kernel test robot
Hi Frederic,
I love your patch! Yet something to improve:
[auto build test ERROR on rcu/dev]
[also build test ERROR on rcu/rcu/next next-20201113]
[cannot apply to tip/timers/core linus/master linux/master v5.10-rc3]
[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/Frederic-Weisbecker/rcu-nocb-De-...
base: https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git dev
config: arm-randconfig-r013-20201113 (attached as .config)
compiler: clang version 12.0.0 (https://github.com/llvm/llvm-project 9e0c35655b6e8186baef8840b26ba4090503b554)
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
# install arm cross compiling tool for clang build
# apt-get install binutils-arm-linux-gnueabi
# https://github.com/0day-ci/linux/commit/4c0d56c4bf8ec775e46d5e895080a2df4...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Frederic-Weisbecker/rcu-nocb-De-offload-and-re-offload-support-v4/20201113-201658
git checkout 4c0d56c4bf8ec775e46d5e895080a2df42e306d8
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All errors (new ones prefixed by >>):
In file included from kernel/rcu/tree.c:4591:
>> kernel/rcu/tree_plugin.h:71:40: error: implicit declaration of function 'lockdep_is_cpus_held' [-Werror,-Wimplicit-function-declaration]
(IS_ENABLED(CONFIG_HOTPLUG_CPU) && lockdep_is_cpus_held()) ||
^
kernel/rcu/tree_plugin.h:71:40: note: did you mean 'lockdep_assert_cpus_held'?
include/linux/cpu.h:136:20: note: 'lockdep_assert_cpus_held' declared here
static inline void lockdep_assert_cpus_held(void) { }
^
1 error generated.
vim +/lockdep_is_cpus_held +71 kernel/rcu/tree_plugin.h
57
58 static bool rcu_rdp_is_offloaded(struct rcu_data *rdp)
59 {
60 /*
61 * In order to read the offloaded state of an rdp is a safe
62 * and stable way and prevent from its value to be changed
63 * under us, we must either hold the barrier mutex, the cpu
64 * hotplug lock (read or write) or the nocb lock. Local
65 * non-preemptible reads are also safe. NOCB kthreads and
66 * timers have their own means of synchronization against the
67 * offloaded state updaters.
68 */
69 RCU_LOCKDEP_WARN(
70 !(lockdep_is_held(&rcu_state.barrier_mutex) ||
> 71 (IS_ENABLED(CONFIG_HOTPLUG_CPU) && lockdep_is_cpus_held()) ||
72 rcu_lockdep_is_held_nocb(rdp) ||
73 (rdp == this_cpu_ptr(&rcu_data) &&
74 !(IS_ENABLED(CONFIG_PREEMPT_COUNT) && preemptible())) ||
75 rcu_current_is_nocb_kthread(rdp) ||
76 rcu_running_nocb_timer(rdp)),
77 "Unsafe read of RCU_NOCB offloaded state"
78 );
79
80 return rcu_segcblist_is_offloaded(&rdp->cblist);
81 }
82
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 10 months
Re: [PATCH] ona10iv: add ona10iv smart PA kernel driver
by kernel test robot
Hi Jamie,
Thank you for the patch! Perhaps something to improve:
[auto build test WARNING on asoc/for-next]
[also build test WARNING on v5.10-rc3 next-20201113]
[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/Jamie-Meacham/ona10iv-add-ona10i...
base: https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next
config: xtensa-randconfig-s031-20201113 (attached as .config)
compiler: xtensa-linux-gcc (GCC) 9.3.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# apt-get install sparse
# sparse version: v0.6.3-107-gaf3512a6-dirty
# https://github.com/0day-ci/linux/commit/f91836c114d9be24432bbe5e0a968ebd8...
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Jamie-Meacham/ona10iv-add-ona10iv-smart-PA-kernel-driver/20201105-004426
git checkout f91836c114d9be24432bbe5e0a968ebd8156a1c1
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=xtensa
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
"sparse warnings: (new ones prefixed by >>)"
>> sound/soc/codecs/ona10iv.c:256:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
sound/soc/codecs/ona10iv.c:260:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
sound/soc/codecs/ona10iv.c:264:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
sound/soc/codecs/ona10iv.c:265:14: sparse: sparse: restricted snd_pcm_format_t degrades to integer
>> sound/soc/codecs/ona10iv.c:355:58: sparse: sparse: incorrect type in argument 2 (different base types) @@ expected int format @@ got restricted snd_pcm_format_t @@
>> sound/soc/codecs/ona10iv.c:355:58: sparse: expected int format
>> sound/soc/codecs/ona10iv.c:355:58: sparse: got restricted snd_pcm_format_t
>> sound/soc/codecs/ona10iv.c:358:46: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected int param_val @@ got restricted snd_pcm_format_t @@
>> sound/soc/codecs/ona10iv.c:358:46: sparse: expected int param_val
sound/soc/codecs/ona10iv.c:358:46: sparse: got restricted snd_pcm_format_t
vim +256 sound/soc/codecs/ona10iv.c
245
246 static int ona10iv_set_bitwidth(struct ona10iv_priv *ona10iv, int format)
247 {
248 struct snd_soc_component *component = ona10iv->component;
249 int slot_width, sample_width;
250 int ret = 0;
251
252 dev_dbg(component->dev,
253 "ONA10IV-->set bitwidth for format: %d\n", format);
254
255 switch (format) {
> 256 case SNDRV_PCM_FORMAT_S16_LE:
257 sample_width = ONA10IV_SAMPW_16;
258 slot_width = ONA10IV_SLOTW_16;
259 break;
260 case SNDRV_PCM_FORMAT_S24_3LE:
261 sample_width = ONA10IV_SAMPW_24;
262 slot_width = ONA10IV_SLOTW_24;
263 break;
264 case SNDRV_PCM_FORMAT_S24_LE:
265 case SNDRV_PCM_FORMAT_S32_LE:
266 sample_width = ONA10IV_SAMPW_32;
267 slot_width = ONA10IV_SLOTW_32;
268 break;
269 default:
270 ret = -EINVAL;
271 }
272 param_errcheck(ret, component->dev,
273 "error no case match for format", format);
274
275 if (ret < 0)
276 return ret;
277
278 ret = snd_soc_component_update_bits(component,
279 ONA10IV_REG_DAI_CTRL2, ONA10IV_SAMPW_MASK,
280 sample_width);
281 param_errcheck(ret, component->dev,
282 "error writing sample width", sample_width);
283 if (ret < 0)
284 return ret;
285
286 ret = snd_soc_component_update_bits(component,
287 ONA10IV_REG_DAI_CTRL2, ONA10IV_SLOTW_MASK,
288 slot_width);
289 param_errcheck(ret, component->dev,
290 "error writing slot width", slot_width);
291 if (ret < 0)
292 return ret;
293
294 return 0;
295 }
296
297 static int ona10iv_set_samplerate(struct ona10iv_priv *ona10iv,
298 int samplerate)
299 {
300 struct snd_soc_component *component = ona10iv->component;
301 int rate_val;
302 int ret = 0;
303
304 dev_dbg(component->dev, "ONA10IV-->samplerate: %d\n", samplerate);
305
306 switch (samplerate) {
307 case 16000:
308 rate_val = ONA10IV_FS_16KHZ;
309 break;
310 case 22050:
311 rate_val = ONA10IV_FS_22KHZ;
312 break;
313 case 32000:
314 rate_val = ONA10IV_FS_32KHZ;
315 break;
316 case 44100:
317 rate_val = ONA10IV_FS_44KHZ;
318 break;
319 case 48000:
320 rate_val = ONA10IV_FS_48KHZ;
321 break;
322 case 96000:
323 rate_val = ONA10IV_FS_96KHZ;
324 break;
325 default:
326 ret = -EINVAL;
327 }
328 param_errcheck(ret, component->dev,
329 "error no case match for rate", samplerate);
330 if (ret < 0)
331 return ret;
332
333 ret = snd_soc_component_update_bits(component,
334 ONA10IV_REG_DAI_CTRL1, ONA10IV_FS_MASK,
335 rate_val);
336 param_errcheck(ret, component->dev,
337 "error writing rate", rate_val);
338 if (ret < 0)
339 return ret;
340
341 return 0;
342 }
343
344 static int ona10iv_hw_params(struct snd_pcm_substream *substream,
345 struct snd_pcm_hw_params *params,
346 struct snd_soc_dai *dai)
347 {
348 struct snd_soc_component *component = dai->component;
349 struct ona10iv_priv *ona10iv =
350 snd_soc_component_get_drvdata(component);
351 int ret;
352
353 dev_dbg(component->dev, "ONA10IV-->setting hw params\n");
354
> 355 ret = ona10iv_set_bitwidth(ona10iv, params_format(params));
356 param_errcheck(ret, component->dev,
357 "error setting bitwidth for format",
> 358 params_format(params));
359 if (ret)
360 return ret;
361
362 ret = ona10iv_set_samplerate(ona10iv, params_rate(params));
363 param_errcheck(ret, component->dev,
364 "error setting rate", params_rate(params));
365 if (ret)
366 return ret;
367
368 return 0;
369 }
370
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
1 year, 10 months