* [android-common:android16-6.12-sp 1/1] htmldocs: ./drivers/dma-buf/dma-buf.c:399: warning: Excess function parameter 'task' description in 'dma_buf_account_task'
@ 2026-06-29 23:16 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-06-29 23:16 UTC (permalink / raw)
To: cros-kernel-buildreports; +Cc: oe-kbuild-all
tree: https://android.googlesource.com/kernel/common android16-6.12-sp
head: cdc3e5d4075f3ec1b02cc805b1abbc0def00202b
commit: f7d26609785ce56170645d56f306db38e8ba277a [1/1] ANDROID: Don't use current pointer for per-process dmabuf accounting
compiler: clang version 22.1.8 (https://github.com/llvm/llvm-project ca7933e47d3a3451d81e72ac174dcb5aa28b59d1)
docutils: docutils (Docutils 0.21.2, Python 3.13.5, on linux)
reproduce: (https://download.01.org/0day-ci/archive/20260630/202606300112.pP5bvpSb-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/202606300112.pP5bvpSb-lkp@intel.com/
All warnings (new ones prefixed by >>):
./include/net/mac80211.h:1287: warning: Function parameter or struct member 'ANDROID_KABI_RESERVE(1' not described in 'ieee80211_tx_info'
./include/net/mac80211.h:2529: warning: Function parameter or struct member 'ANDROID_KABI_RESERVE(1' not described in 'ieee80211_sta'
./kernel/sched/cpupri.c:154: warning: Function parameter or struct member 'sched_ctx' not described in 'cpupri_find_fitness'
./kernel/sched/cpupri.c:154: warning: Function parameter or struct member 'exec_ctx' not described in 'cpupri_find_fitness'
./kernel/sched/cpupri.c:154: warning: Excess function parameter 'p' description in 'cpupri_find_fitness'
>> ./drivers/dma-buf/dma-buf.c:399: warning: Excess function parameter 'task' description in 'dma_buf_account_task'
>> ./drivers/dma-buf/dma-buf.c:435: warning: Excess function parameter 'task' description in 'dma_buf_unaccount_task'
./drivers/dma-buf/dma-buf.c:905: warning: Excess function parameter 'buf' description in 'dma_buf_set_name'
>> ./drivers/dma-buf/dma-buf.c:399: warning: Excess function parameter 'task' description in 'dma_buf_account_task'
>> ./drivers/dma-buf/dma-buf.c:435: warning: Excess function parameter 'task' description in 'dma_buf_unaccount_task'
./drivers/dma-buf/dma-buf.c:905: warning: Excess function parameter 'buf' description in 'dma_buf_set_name'
>> ./drivers/dma-buf/dma-buf.c:399: warning: Excess function parameter 'task' description in 'dma_buf_account_task'
>> ./drivers/dma-buf/dma-buf.c:435: warning: Excess function parameter 'task' description in 'dma_buf_unaccount_task'
./drivers/dma-buf/dma-buf.c:905: warning: Excess function parameter 'buf' description in 'dma_buf_set_name'
>> ./drivers/dma-buf/dma-buf.c:399: warning: Excess function parameter 'task' description in 'dma_buf_account_task'
>> ./drivers/dma-buf/dma-buf.c:435: warning: Excess function parameter 'task' description in 'dma_buf_unaccount_task'
./drivers/dma-buf/dma-buf.c:905: warning: Excess function parameter 'buf' description in 'dma_buf_set_name'
>> ./drivers/dma-buf/dma-buf.c:399: warning: Excess function parameter 'task' description in 'dma_buf_account_task'
>> ./drivers/dma-buf/dma-buf.c:435: warning: Excess function parameter 'task' description in 'dma_buf_unaccount_task'
./drivers/dma-buf/dma-buf.c:905: warning: Function parameter or struct member 'name' not described in 'dma_buf_set_name'
./drivers/dma-buf/dma-buf.c:905: warning: Excess function parameter 'buf' description in 'dma_buf_set_name'
./include/linux/dma-buf.h:367: warning: Function parameter or struct member 'ANDROID_KABI_RESERVE(1' not described in 'dma_buf_ops'
./include/linux/dma-buf.h:367: warning: Function parameter or struct member 'ANDROID_KABI_RESERVE(2' not described in 'dma_buf_ops'
./include/linux/dma-buf.h:550: warning: Function parameter or struct member 'ANDROID_KABI_RESERVE(1' not described in 'dma_buf'
vim +399 ./drivers/dma-buf/dma-buf.c
d50dd969464c6a T.J. Mercier 2025-07-22 384
d50dd969464c6a T.J. Mercier 2025-07-22 385 /**
d50dd969464c6a T.J. Mercier 2025-07-22 386 * dma_buf_account_task - Account a dmabuf to a task
d50dd969464c6a T.J. Mercier 2025-07-22 387 * @dmabuf: [in] pointer to dma_buf
d50dd969464c6a T.J. Mercier 2025-07-22 388 * @task: [in] pointer to task_struct
d50dd969464c6a T.J. Mercier 2025-07-22 389 *
d50dd969464c6a T.J. Mercier 2025-07-22 390 * When a process obtains a dmabuf file descriptor, or maps a dmabuf, this
d50dd969464c6a T.J. Mercier 2025-07-22 391 * function attributes the provided @dmabuf to the @task. The first time @dmabuf
d50dd969464c6a T.J. Mercier 2025-07-22 392 * is attributed to @task, the buffer's size is added to the @task's dmabuf RSS.
d50dd969464c6a T.J. Mercier 2025-07-22 393 *
d50dd969464c6a T.J. Mercier 2025-07-22 394 * Return:
d50dd969464c6a T.J. Mercier 2025-07-22 395 * * 0 on success
d50dd969464c6a T.J. Mercier 2025-07-22 396 * * A negative error code upon error
d50dd969464c6a T.J. Mercier 2025-07-22 397 */
f7d26609785ce5 T.J. Mercier 2025-11-12 398 int dma_buf_account_task(struct dma_buf *dmabuf, struct task_dma_buf_info *dmabuf_info)
d50dd969464c6a T.J. Mercier 2025-07-22 @399 {
d50dd969464c6a T.J. Mercier 2025-07-22 400 struct task_dma_buf_record *rec;
d50dd969464c6a T.J. Mercier 2025-07-22 401
d50dd969464c6a T.J. Mercier 2025-07-22 402 if (!dmabuf_info)
d50dd969464c6a T.J. Mercier 2025-07-22 403 return 0;
d50dd969464c6a T.J. Mercier 2025-07-22 404
d50dd969464c6a T.J. Mercier 2025-07-22 405 if (!task_dmabuf_records_preload(1))
d50dd969464c6a T.J. Mercier 2025-07-22 406 return -ENOMEM;
d50dd969464c6a T.J. Mercier 2025-07-22 407
d50dd969464c6a T.J. Mercier 2025-07-22 408 spin_lock(&dmabuf_info->lock);
d50dd969464c6a T.J. Mercier 2025-07-22 409 rec = find_task_dmabuf_record(dmabuf_info, dmabuf);
d50dd969464c6a T.J. Mercier 2025-07-22 410 if (rec) {
d50dd969464c6a T.J. Mercier 2025-07-22 411 ++rec->refcnt;
d50dd969464c6a T.J. Mercier 2025-07-22 412 trim_task_dmabuf_records_locked();
d50dd969464c6a T.J. Mercier 2025-07-22 413 } else {
d50dd969464c6a T.J. Mercier 2025-07-22 414 rec = alloc_task_dmabuf_record();
d50dd969464c6a T.J. Mercier 2025-07-22 415 WARN_ON(!rec);
d50dd969464c6a T.J. Mercier 2025-07-22 416 add_task_dmabuf_record(dmabuf_info, dmabuf, rec);
d50dd969464c6a T.J. Mercier 2025-07-22 417 }
d50dd969464c6a T.J. Mercier 2025-07-22 418 spin_unlock(&dmabuf_info->lock);
d50dd969464c6a T.J. Mercier 2025-07-22 419 task_dmabuf_records_preload_end();
d50dd969464c6a T.J. Mercier 2025-07-22 420
d50dd969464c6a T.J. Mercier 2025-07-22 421 return 0;
d50dd969464c6a T.J. Mercier 2025-07-22 422 }
d50dd969464c6a T.J. Mercier 2025-07-22 423
d50dd969464c6a T.J. Mercier 2025-07-22 424 /**
d50dd969464c6a T.J. Mercier 2025-07-22 425 * dma_buf_unaccount_task - Unaccount a dmabuf from a task
d50dd969464c6a T.J. Mercier 2025-07-22 426 * @dmabuf: [in] pointer to dma_buf
d50dd969464c6a T.J. Mercier 2025-07-22 427 * @task: [in] pointer to task_struct
d50dd969464c6a T.J. Mercier 2025-07-22 428 *
d50dd969464c6a T.J. Mercier 2025-07-22 429 * When a process closes a dmabuf file descriptor, or unmaps a dmabuf, this
d50dd969464c6a T.J. Mercier 2025-07-22 430 * function removes the provided @dmabuf attribution from the @task. When all
d50dd969464c6a T.J. Mercier 2025-07-22 431 * references to @dmabuf are removed from @task, the buffer's size is removed
d50dd969464c6a T.J. Mercier 2025-07-22 432 * from the task's dmabuf RSS.
d50dd969464c6a T.J. Mercier 2025-07-22 433 */
f7d26609785ce5 T.J. Mercier 2025-11-12 434 void dma_buf_unaccount_task(struct dma_buf *dmabuf, struct task_dma_buf_info *dmabuf_info)
d50dd969464c6a T.J. Mercier 2025-07-22 @435 {
d50dd969464c6a T.J. Mercier 2025-07-22 436 struct task_dma_buf_record *rec;
d50dd969464c6a T.J. Mercier 2025-07-22 437
d50dd969464c6a T.J. Mercier 2025-07-22 438 if (!dmabuf_info)
d50dd969464c6a T.J. Mercier 2025-07-22 439 return;
d50dd969464c6a T.J. Mercier 2025-07-22 440
d50dd969464c6a T.J. Mercier 2025-07-22 441 spin_lock(&dmabuf_info->lock);
d50dd969464c6a T.J. Mercier 2025-07-22 442 rec = find_task_dmabuf_record(dmabuf_info, dmabuf);
d50dd969464c6a T.J. Mercier 2025-07-22 443 if (rec) {
d50dd969464c6a T.J. Mercier 2025-07-22 444 if (--rec->refcnt == 0) {
d50dd969464c6a T.J. Mercier 2025-07-22 445 list_del(&rec->node);
d50dd969464c6a T.J. Mercier 2025-07-22 446 dmabuf_info->dmabuf_count--;
d50dd969464c6a T.J. Mercier 2025-07-22 447 dmabuf_info->rss -= dmabuf->size;
2913cc072097bc T.J. Mercier 2025-07-01 448 trace_dmabuf_rss_stat(dmabuf_info->rss, -dmabuf->size, dmabuf);
45ae7f0b6b5f0a T.J. Mercier 2025-07-08 449 atomic64_dec(&dmabuf->nr_task_refs);
d50dd969464c6a T.J. Mercier 2025-07-22 450 } else {
d50dd969464c6a T.J. Mercier 2025-07-22 451 rec = NULL;
d50dd969464c6a T.J. Mercier 2025-07-22 452 }
d50dd969464c6a T.J. Mercier 2025-07-22 453 } else {
f7d26609785ce5 T.J. Mercier 2025-11-12 454 pr_err("Could not find dmabuf %lu in unaccount\n",
f7d26609785ce5 T.J. Mercier 2025-11-12 455 file_inode(dmabuf->file)->i_ino);
d50dd969464c6a T.J. Mercier 2025-07-22 456 }
d50dd969464c6a T.J. Mercier 2025-07-22 457 spin_unlock(&dmabuf_info->lock);
d50dd969464c6a T.J. Mercier 2025-07-22 458 if (rec)
d50dd969464c6a T.J. Mercier 2025-07-22 459 free_task_dmabuf_record(rec);
d50dd969464c6a T.J. Mercier 2025-07-22 460 }
d50dd969464c6a T.J. Mercier 2025-07-22 461
:::::: The code at line 399 was first introduced by commit
:::::: d50dd969464c6a44ff601c687c33f7b7f7e4ba53 ANDROID: Track per-process dmabuf RSS
:::::: TO: T.J. Mercier <tjmercier@google.com>
:::::: CC: Treehugger Robot <android-test-infra-autosubmit@system.gserviceaccount.com>
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-06-29 23:17 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-06-29 23:16 [android-common:android16-6.12-sp 1/1] htmldocs: ./drivers/dma-buf/dma-buf.c:399: warning: Excess function parameter 'task' description in 'dma_buf_account_task' kernel test robot
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.