linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [ogabbay:habanalabs-next 32/33] drivers/misc/habanalabs/common/irq.c:178:5: warning: no previous prototype for 'handle_registration_node'
@ 2022-01-28 23:47 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-01-28 23:47 UTC (permalink / raw)
  To: farah kassabri; +Cc: kbuild-all, linux-kernel, Oded Gabbay

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux.git habanalabs-next
head:   c720ae02be190b7639446bba872752a68cb4ba17
commit: 402f801a3488a90a5481524ea87c3da17867e635 [32/33] habanalabs: Timestamps buffers registration
config: alpha-allyesconfig (https://download.01.org/0day-ci/archive/20220129/202201290701.fKs5pg0E-lkp@intel.com/config)
compiler: alpha-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://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux.git/commit/?id=402f801a3488a90a5481524ea87c3da17867e635
        git remote add ogabbay https://git.kernel.org/pub/scm/linux/kernel/git/ogabbay/linux.git
        git fetch --no-tags ogabbay habanalabs-next
        git checkout 402f801a3488a90a5481524ea87c3da17867e635
        # 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=alpha SHELL=/bin/bash drivers/misc/

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All warnings (new ones prefixed by >>):

>> drivers/misc/habanalabs/common/irq.c:178:5: warning: no previous prototype for 'handle_registration_node' [-Wmissing-prototypes]
     178 | int handle_registration_node(struct hl_device *hdev, struct hl_user_pending_interrupt *pend,
         |     ^~~~~~~~~~~~~~~~~~~~~~~~
--
   drivers/misc/habanalabs/common/memory.c: In function 'ts_buff_release':
   drivers/misc/habanalabs/common/memory.c:2046:9: error: implicit declaration of function 'vfree'; did you mean 'kvfree'? [-Werror=implicit-function-declaration]
    2046 |         vfree(buff->kernel_buff_address);
         |         ^~~~~
         |         kvfree
   drivers/misc/habanalabs/common/memory.c: In function 'hl_ts_mmap':
   drivers/misc/habanalabs/common/memory.c:2150:14: error: implicit declaration of function 'remap_vmalloc_range'; did you mean 'ida_alloc_range'? [-Werror=implicit-function-declaration]
    2150 |         rc = remap_vmalloc_range(vma, buff->user_buff_address, 0);
         |              ^~~~~~~~~~~~~~~~~~~
         |              ida_alloc_range
   drivers/misc/habanalabs/common/memory.c: In function 'hl_ts_alloc_buff':
   drivers/misc/habanalabs/common/memory.c:2201:13: error: implicit declaration of function 'vmalloc_user'; did you mean 'kmalloc_order'? [-Werror=implicit-function-declaration]
    2201 |         p = vmalloc_user(size);
         |             ^~~~~~~~~~~~
         |             kmalloc_order
>> drivers/misc/habanalabs/common/memory.c:2201:11: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
    2201 |         p = vmalloc_user(size);
         |           ^
   drivers/misc/habanalabs/common/memory.c:2210:13: error: implicit declaration of function 'vmalloc'; did you mean 'kvmalloc'? [-Werror=implicit-function-declaration]
    2210 |         p = vmalloc(size);
         |             ^~~~~~~
         |             kvmalloc
   drivers/misc/habanalabs/common/memory.c:2210:11: warning: assignment to 'void *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
    2210 |         p = vmalloc(size);
         |           ^
   cc1: some warnings being treated as errors


vim +/handle_registration_node +178 drivers/misc/habanalabs/common/irq.c

   167	
   168	/*
   169	 * This function called with spin_lock of wait_list_lock taken
   170	 * This function will set timestamp and delete the registration node from the
   171	 * wait_list_lock.
   172	 * and since we're protected with spin_lock here, so we cannot just put the refcount
   173	 * for the objects here, since the release function may be called and it's also a long
   174	 * logic (which might sleep also) that cannot be handled in irq context.
   175	 * so here we'll be filling a list with nodes of "put" jobs and then will send this
   176	 * list to a dedicated workqueue to do the actual put.
   177	 */
 > 178	int handle_registration_node(struct hl_device *hdev, struct hl_user_pending_interrupt *pend,
   179							struct list_head **free_list)
   180	{
   181		struct timestamp_reg_free_node *free_node;
   182		u64 timestamp;
   183	
   184		if (!(*free_list)) {
   185			/* Alloc/Init the timestamp registration free objects list */
   186			*free_list = kmalloc(sizeof(struct list_head), GFP_ATOMIC);
   187			if (!(*free_list))
   188				return -ENOMEM;
   189	
   190			INIT_LIST_HEAD(*free_list);
   191		}
   192	
   193		free_node = kmalloc(sizeof(*free_node), GFP_ATOMIC);
   194		if (!free_node)
   195			return -ENOMEM;
   196	
   197		timestamp = ktime_get_ns();
   198	
   199		*pend->ts_reg_info.timestamp_kernel_addr = timestamp;
   200	
   201		dev_dbg(hdev->dev, "Timestamp is set to ts cb address (%p), ts: 0x%llx\n",
   202				pend->ts_reg_info.timestamp_kernel_addr,
   203				*(u64 *)pend->ts_reg_info.timestamp_kernel_addr);
   204	
   205		list_del(&pend->wait_list_node);
   206	
   207		/* Mark kernel CB node as free */
   208		pend->ts_reg_info.in_use = 0;
   209	
   210		/* Putting the refcount for ts_buff and cq_cb objects will be handled
   211		 * in workqueue context, just add job to free_list.
   212		 */
   213		free_node->ts_buff = pend->ts_reg_info.ts_buff;
   214		free_node->cq_cb = pend->ts_reg_info.cq_cb;
   215		list_add(&free_node->free_objects_node, *free_list);
   216	
   217		return 0;
   218	}
   219	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-01-28 23:48 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-01-28 23:47 [ogabbay:habanalabs-next 32/33] drivers/misc/habanalabs/common/irq.c:178:5: warning: no previous prototype for 'handle_registration_node' kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).