tree:
https://github.com/Xilinx/linux-xlnx master
head: 319e5bc767fe351a63744daa9cdd69b1915956d0
commit: b4164ed1bbab5999a8b30dc25eaaa3200ff1fe59 [10/20] misc: ai-engine: Move AI engine
reg access to kernel
config: alpha-allyesconfig (attached as .config)
compiler: alpha-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
git checkout b4164ed1bbab5999a8b30dc25eaaa3200ff1fe59
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=alpha
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 >>, old ones prefixed by <<):
drivers/misc/xilinx-ai-engine/ai-engine-dev.c: In function
'aie_request_partition_from_id':
> drivers/misc/xilinx-ai-engine/ai-engine-dev.c:165:2: warning:
ignoring return value of 'mutex_lock_interruptible', declared with attribute
warn_unused_result [-Wunused-result]
165 |
mutex_lock_interruptible(&adev->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-dev.c:175:2: warning: ignoring return value of
'mutex_lock_interruptible', declared with attribute warn_unused_result
[-Wunused-result]
175 | mutex_lock_interruptible(&apart->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-dev.c: In function
'aie_enquire_partitions':
drivers/misc/xilinx-ai-engine/ai-engine-dev.c:97:2: warning: ignoring return value of
'mutex_lock_interruptible', declared with attribute warn_unused_result
[-Wunused-result]
97 | mutex_lock_interruptible(&adev->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
drivers/misc/xilinx-ai-engine/ai-engine-part.c: In function 'aie_part_release':
> drivers/misc/xilinx-ai-engine/ai-engine-part.c:253:2: warning:
ignoring return value of 'mutex_lock_interruptible', declared with attribute
warn_unused_result [-Wunused-result]
253 |
mutex_lock_interruptible(&apart->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-part.c: In function 'aie_part_ioctl':
drivers/misc/xilinx-ai-engine/ai-engine-part.c:366:3: warning: ignoring return value of
'mutex_lock_interruptible', declared with attribute warn_unused_result
[-Wunused-result]
366 | mutex_lock_interruptible(&apart->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-part.c: In function
'aie_part_write_iter':
drivers/misc/xilinx-ai-engine/ai-engine-part.c:276:2: warning: ignoring return value of
'mutex_lock_interruptible', declared with attribute warn_unused_result
[-Wunused-result]
276 | mutex_lock_interruptible(&apart->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-part.c: In function 'aie_part_read_iter':
drivers/misc/xilinx-ai-engine/ai-engine-part.c:296:2: warning: ignoring return value of
'mutex_lock_interruptible', declared with attribute warn_unused_result
[-Wunused-result]
296 | mutex_lock_interruptible(&apart->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-part.c: In function 'of_aie_part_probe':
drivers/misc/xilinx-ai-engine/ai-engine-part.c:514:2: warning: ignoring return value of
'mutex_lock_interruptible', declared with attribute warn_unused_result
[-Wunused-result]
514 | mutex_lock_interruptible(&adev->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-part.c: In function
'aie_create_partition':
drivers/misc/xilinx-ai-engine/ai-engine-part.c:429:2: warning: ignoring return value of
'mutex_lock_interruptible', declared with attribute warn_unused_result
[-Wunused-result]
429 | mutex_lock_interruptible(&adev->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-part.c:476:2: warning: ignoring return value of
'mutex_lock_interruptible', declared with attribute warn_unused_result
[-Wunused-result]
476 | mutex_lock_interruptible(&adev->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/misc/xilinx-ai-engine/ai-engine-part.c: In function
'aie_part_release_device':
drivers/misc/xilinx-ai-engine/ai-engine-part.c:401:2: warning: ignoring return value of
'mutex_lock_interruptible', declared with attribute warn_unused_result
[-Wunused-result]
401 | mutex_lock_interruptible(&adev->mlock);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
vim +/mutex_lock_interruptible +165 drivers/misc/xilinx-ai-engine/ai-engine-dev.c
150
151 /**
152 * aie_request_partition_from_id() - request AI engine partition from id
153 * @adev: AI engine device
154 * @partition_id: partition id
155 * @return: partition pointer if partition exists, otherwise, NULL.
156 *
157 * This function finds a defined partition which matches the specified
158 * partition id, request it by increasing the refcount, and returns it.
159 */
160 struct aie_partition *aie_request_partition_from_id(struct aie_device *adev,
161 u32 partition_id)
162 {
163 struct aie_partition *apart;
164
165 mutex_lock_interruptible(&adev->mlock);
166 apart = aie_get_partition_from_id(adev, partition_id);
167 if (!apart) {
168 dev_err(&adev->dev,
169 "request partition %u failed, not exist.\n",
170 partition_id);
171 mutex_unlock(&adev->mlock);
172 return ERR_PTR(-EINVAL);
173 }
174
175 mutex_lock_interruptible(&apart->mlock);
176 if (apart->status & XAIE_PART_STATUS_INUSE) {
177 mutex_unlock(&apart->mlock);
178 dev_err(&adev->dev,
179 "request partition %u failed, partition in use.\n",
180 partition_id);
181 apart = ERR_PTR(-EBUSY);
182 } else {
183 /*
184 * TBD:
185 * 1. setup NOC AXI MM config to only generate error events
186 * for slave error and decode error.
187 * 2. scan to see which tiles have been clock gated.
188 *
189 * This needs to be done before the AI engine partition is
190 * exported for user to access.
191 */
192 apart->status = XAIE_PART_STATUS_INUSE;
193 mutex_unlock(&apart->mlock);
194 }
195 mutex_unlock(&adev->mlock);
196
197 return apart;
198 }
199
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org