mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Lizhi Hou <lizhi.hou@amd.com>,
	ogabbay@kernel.org, quic_jhugo@quicinc.com,
	maciej.falkowski@linux.intel.com,
	dri-devel@lists.freedesktop.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
	Lizhi Hou <lizhi.hou@amd.com>,
	linux-kernel@vger.kernel.org, max.zhen@amd.com,
	sonal.santan@amd.com, mario.limonciello@amd.com
Subject: Re: [PATCH V2] accel/amdxdna: Enhance runtime power management
Date: Mon, 22 Sep 2025 16:39:04 +0800	[thread overview]
Message-ID: <202509221605.9PJQqMb8-lkp@intel.com> (raw)
In-Reply-To: <20250918195136.439012-1-lizhi.hou@amd.com>

Hi Lizhi,

kernel test robot noticed the following build errors:

[auto build test ERROR on drm-misc/drm-misc-next]
[also build test ERROR on drm-tip/drm-tip next-20250919]
[cannot apply to linus/master v6.17-rc7]
[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#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Lizhi-Hou/accel-amdxdna-Enhance-runtime-power-management/20250919-035402
base:   git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
patch link:    https://lore.kernel.org/r/20250918195136.439012-1-lizhi.hou%40amd.com
patch subject: [PATCH V2] accel/amdxdna: Enhance runtime power management
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20250922/202509221605.9PJQqMb8-lkp@intel.com/config)
compiler: clang version 20.1.8 (https://github.com/llvm/llvm-project 87f0227cb60147a26a1eeb4fb06e3b505e9c7261)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250922/202509221605.9PJQqMb8-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/202509221605.9PJQqMb8-lkp@intel.com/

All errors (new ones prefixed by >>):

>> drivers/accel/amdxdna/amdxdna_ctx.c:171:3: error: cannot jump from this goto statement to its label
     171 |                 goto free_hwctx;
         |                 ^
   drivers/accel/amdxdna/amdxdna_ctx.c:180:2: note: jump bypasses initialization of variable with __attribute__((cleanup))
     180 |         guard(mutex)(&xdna->dev_lock);
         |         ^
   include/linux/cleanup.h:401:15: note: expanded from macro 'guard'
     401 |         CLASS(_name, __UNIQUE_ID(guard))
         |                      ^
   include/linux/compiler.h:166:29: note: expanded from macro '__UNIQUE_ID'
     166 | #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__)
         |                             ^
   include/linux/compiler_types.h:84:22: note: expanded from macro '__PASTE'
      84 | #define __PASTE(a,b) ___PASTE(a,b)
         |                      ^
   include/linux/compiler_types.h:83:23: note: expanded from macro '___PASTE'
      83 | #define ___PASTE(a,b) a##b
         |                       ^
   <scratch space>:16:1: note: expanded from here
      16 | __UNIQUE_ID_guard1255
         | ^
   1 error generated.


vim +171 drivers/accel/amdxdna/amdxdna_ctx.c

be462c97b7dfd2 Lizhi Hou 2024-11-18  152  
be462c97b7dfd2 Lizhi Hou 2024-11-18  153  int amdxdna_drm_create_hwctx_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)
be462c97b7dfd2 Lizhi Hou 2024-11-18  154  {
be462c97b7dfd2 Lizhi Hou 2024-11-18  155  	struct amdxdna_client *client = filp->driver_priv;
be462c97b7dfd2 Lizhi Hou 2024-11-18  156  	struct amdxdna_drm_create_hwctx *args = data;
be462c97b7dfd2 Lizhi Hou 2024-11-18  157  	struct amdxdna_dev *xdna = to_xdna_dev(dev);
be462c97b7dfd2 Lizhi Hou 2024-11-18  158  	struct amdxdna_hwctx *hwctx;
be462c97b7dfd2 Lizhi Hou 2024-11-18  159  	int ret, idx;
be462c97b7dfd2 Lizhi Hou 2024-11-18  160  
be462c97b7dfd2 Lizhi Hou 2024-11-18  161  	if (args->ext || args->ext_flags)
be462c97b7dfd2 Lizhi Hou 2024-11-18  162  		return -EINVAL;
be462c97b7dfd2 Lizhi Hou 2024-11-18  163  
be462c97b7dfd2 Lizhi Hou 2024-11-18  164  	hwctx = kzalloc(sizeof(*hwctx), GFP_KERNEL);
17b2662aa6d69f Lizhi Hou 2025-09-18  165  	if (!hwctx)
17b2662aa6d69f Lizhi Hou 2025-09-18  166  		return -ENOMEM;
be462c97b7dfd2 Lizhi Hou 2024-11-18  167  
be462c97b7dfd2 Lizhi Hou 2024-11-18  168  	if (copy_from_user(&hwctx->qos, u64_to_user_ptr(args->qos_p), sizeof(hwctx->qos))) {
be462c97b7dfd2 Lizhi Hou 2024-11-18  169  		XDNA_ERR(xdna, "Access QoS info failed");
be462c97b7dfd2 Lizhi Hou 2024-11-18  170  		ret = -EFAULT;
be462c97b7dfd2 Lizhi Hou 2024-11-18 @171  		goto free_hwctx;
be462c97b7dfd2 Lizhi Hou 2024-11-18  172  	}
be462c97b7dfd2 Lizhi Hou 2024-11-18  173  
be462c97b7dfd2 Lizhi Hou 2024-11-18  174  	hwctx->client = client;
be462c97b7dfd2 Lizhi Hou 2024-11-18  175  	hwctx->fw_ctx_id = -1;
be462c97b7dfd2 Lizhi Hou 2024-11-18  176  	hwctx->num_tiles = args->num_tiles;
be462c97b7dfd2 Lizhi Hou 2024-11-18  177  	hwctx->mem_size = args->mem_size;
be462c97b7dfd2 Lizhi Hou 2024-11-18  178  	hwctx->max_opc = args->max_opc;
17b2662aa6d69f Lizhi Hou 2025-09-18  179  
17b2662aa6d69f Lizhi Hou 2025-09-18  180  	guard(mutex)(&xdna->dev_lock);
17b2662aa6d69f Lizhi Hou 2025-09-18  181  
17b2662aa6d69f Lizhi Hou 2025-09-18  182  	if (!drm_dev_enter(dev, &idx)) {
17b2662aa6d69f Lizhi Hou 2025-09-18  183  		ret = -ENODEV;
be462c97b7dfd2 Lizhi Hou 2024-11-18  184  		goto free_hwctx;
be462c97b7dfd2 Lizhi Hou 2024-11-18  185  	}
be462c97b7dfd2 Lizhi Hou 2024-11-18  186  
17b2662aa6d69f Lizhi Hou 2025-09-18  187  	ret = xdna->dev_info->ops->hwctx_init(hwctx);
17b2662aa6d69f Lizhi Hou 2025-09-18  188  	if (ret) {
17b2662aa6d69f Lizhi Hou 2025-09-18  189  		XDNA_ERR(xdna, "Init hwctx failed, ret %d", ret);
17b2662aa6d69f Lizhi Hou 2025-09-18  190  		goto dev_exit;
17b2662aa6d69f Lizhi Hou 2025-09-18  191  	}
17b2662aa6d69f Lizhi Hou 2025-09-18  192  
17b2662aa6d69f Lizhi Hou 2025-09-18  193  	hwctx->name = kasprintf(GFP_KERNEL, "hwctx.%d.%d", client->pid, hwctx->fw_ctx_id);
be462c97b7dfd2 Lizhi Hou 2024-11-18  194  	if (!hwctx->name) {
be462c97b7dfd2 Lizhi Hou 2024-11-18  195  		ret = -ENOMEM;
17b2662aa6d69f Lizhi Hou 2025-09-18  196  		goto fini_hwctx;
be462c97b7dfd2 Lizhi Hou 2024-11-18  197  	}
be462c97b7dfd2 Lizhi Hou 2024-11-18  198  
17b2662aa6d69f Lizhi Hou 2025-09-18  199  	ret = xa_alloc_cyclic(&client->hwctx_xa, &hwctx->id, hwctx,
17b2662aa6d69f Lizhi Hou 2025-09-18  200  			      XA_LIMIT(AMDXDNA_INVALID_CTX_HANDLE + 1, MAX_HWCTX_ID),
17b2662aa6d69f Lizhi Hou 2025-09-18  201  			      &client->next_hwctxid, GFP_KERNEL);
17b2662aa6d69f Lizhi Hou 2025-09-18  202  	if (ret < 0) {
17b2662aa6d69f Lizhi Hou 2025-09-18  203  		XDNA_ERR(xdna, "Allocate hwctx ID failed, ret %d", ret);
be462c97b7dfd2 Lizhi Hou 2024-11-18  204  		goto free_name;
be462c97b7dfd2 Lizhi Hou 2024-11-18  205  	}
17b2662aa6d69f Lizhi Hou 2025-09-18  206  
be462c97b7dfd2 Lizhi Hou 2024-11-18  207  	args->handle = hwctx->id;
be462c97b7dfd2 Lizhi Hou 2024-11-18  208  	args->syncobj_handle = hwctx->syncobj_hdl;
be462c97b7dfd2 Lizhi Hou 2024-11-18  209  
4fd6ca90fc7f50 Lizhi Hou 2025-01-24  210  	atomic64_set(&hwctx->job_submit_cnt, 0);
4fd6ca90fc7f50 Lizhi Hou 2025-01-24  211  	atomic64_set(&hwctx->job_free_cnt, 0);
be462c97b7dfd2 Lizhi Hou 2024-11-18  212  	XDNA_DBG(xdna, "PID %d create HW context %d, ret %d", client->pid, args->handle, ret);
be462c97b7dfd2 Lizhi Hou 2024-11-18  213  	drm_dev_exit(idx);
be462c97b7dfd2 Lizhi Hou 2024-11-18  214  	return 0;
be462c97b7dfd2 Lizhi Hou 2024-11-18  215  
be462c97b7dfd2 Lizhi Hou 2024-11-18  216  free_name:
be462c97b7dfd2 Lizhi Hou 2024-11-18  217  	kfree(hwctx->name);
17b2662aa6d69f Lizhi Hou 2025-09-18  218  fini_hwctx:
17b2662aa6d69f Lizhi Hou 2025-09-18  219  	xdna->dev_info->ops->hwctx_fini(hwctx);
17b2662aa6d69f Lizhi Hou 2025-09-18  220  dev_exit:
17b2662aa6d69f Lizhi Hou 2025-09-18  221  	drm_dev_exit(idx);
be462c97b7dfd2 Lizhi Hou 2024-11-18  222  free_hwctx:
be462c97b7dfd2 Lizhi Hou 2024-11-18  223  	kfree(hwctx);
be462c97b7dfd2 Lizhi Hou 2024-11-18  224  	return ret;
be462c97b7dfd2 Lizhi Hou 2024-11-18  225  }
be462c97b7dfd2 Lizhi Hou 2024-11-18  226  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

  reply	other threads:[~2025-09-22  8:40 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-18 19:51 Lizhi Hou
2025-09-22  8:39 ` kernel test robot [this message]
2025-09-22  8:40 ` Karol Wachowski
2025-09-22 15:41   ` Lizhi Hou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202509221605.9PJQqMb8-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lizhi.hou@amd.com \
    --cc=llvm@lists.linux.dev \
    --cc=maciej.falkowski@linux.intel.com \
    --cc=mario.limonciello@amd.com \
    --cc=max.zhen@amd.com \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=ogabbay@kernel.org \
    --cc=quic_jhugo@quicinc.com \
    --cc=sonal.santan@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®