lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Date:   Sat, 9 Apr 2022 13:32:33 +0800
From:   kernel test robot <lkp@...el.com>
To:     Tomi Valkeinen <tomi.valkeinen@...asonboard.com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
        Sakari Ailus <sakari.ailus@...ux.intel.com>,
        Hans Verkuil <hverkuil@...all.nl>
Subject: [sailus-media-tree:master 28/30]
 drivers/media/v4l2-core/v4l2-subdev.c:335:33: error: implicit declaration of
 function 'v4l2_subdev_lock_and_get_active_state'

tree:   git://linuxtv.org/sailus/media_tree.git master
head:   bd1d801f302289ddbf86ff6c38fcc91aef8e7609
commit: 3f1a6a471c6a8b5ba772cb82538ad03fa0255e7c [28/30] media: subdev: add locking wrappers to subdev op wrappers
config: sparc-randconfig-p001-20220408 (https://download.01.org/0day-ci/archive/20220409/202204091346.VjKbcCcw-lkp@intel.com/config)
compiler: sparc64-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
        git remote add sailus-media-tree git://linuxtv.org/sailus/media_tree.git
        git fetch --no-tags sailus-media-tree master
        git checkout 3f1a6a471c6a8b5ba772cb82538ad03fa0255e7c
        # 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=sparc SHELL=/bin/bash drivers/media/v4l2-core/

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

All error/warnings (new ones prefixed by >>):

   drivers/media/v4l2-core/v4l2-subdev.c: In function 'call_get_fmt_state':
>> drivers/media/v4l2-core/v4l2-subdev.c:335:33: error: implicit declaration of function 'v4l2_subdev_lock_and_get_active_state' [-Werror=implicit-function-declaration]
     335 |                         state = v4l2_subdev_lock_and_get_active_state(sd); \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/v4l2-core/v4l2-subdev.c:335:33: note: in definition of macro 'DEFINE_STATE_WRAPPER'
     335 |                         state = v4l2_subdev_lock_and_get_active_state(sd); \
         |                                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/media/v4l2-core/v4l2-subdev.c:335:31: warning: assignment to 'struct v4l2_subdev_state *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
     335 |                         state = v4l2_subdev_lock_and_get_active_state(sd); \
         |                               ^
   drivers/media/v4l2-core/v4l2-subdev.c:342:1: note: in expansion of macro 'DEFINE_STATE_WRAPPER'
     342 | DEFINE_STATE_WRAPPER(get_fmt, struct v4l2_subdev_format);
         | ^~~~~~~~~~~~~~~~~~~~
>> drivers/media/v4l2-core/v4l2-subdev.c:338:25: error: implicit declaration of function 'v4l2_subdev_unlock_state' [-Werror=implicit-function-declaration]
     338 |                         v4l2_subdev_unlock_state(state);                   \
         |                         ^~~~~~~~~~~~~~~~~~~~~~~~
   drivers/media/v4l2-core/v4l2-subdev.c:342:1: note: in expansion of macro 'DEFINE_STATE_WRAPPER'
     342 | DEFINE_STATE_WRAPPER(get_fmt, struct v4l2_subdev_format);
         | ^~~~~~~~~~~~~~~~~~~~
   drivers/media/v4l2-core/v4l2-subdev.c: In function 'call_set_fmt_state':
>> drivers/media/v4l2-core/v4l2-subdev.c:335:31: warning: assignment to 'struct v4l2_subdev_state *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
     335 |                         state = v4l2_subdev_lock_and_get_active_state(sd); \
         |                               ^
   drivers/media/v4l2-core/v4l2-subdev.c:343:1: note: in expansion of macro 'DEFINE_STATE_WRAPPER'
     343 | DEFINE_STATE_WRAPPER(set_fmt, struct v4l2_subdev_format);
         | ^~~~~~~~~~~~~~~~~~~~
   drivers/media/v4l2-core/v4l2-subdev.c: In function 'call_enum_mbus_code_state':
>> drivers/media/v4l2-core/v4l2-subdev.c:335:31: warning: assignment to 'struct v4l2_subdev_state *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
     335 |                         state = v4l2_subdev_lock_and_get_active_state(sd); \
         |                               ^
   drivers/media/v4l2-core/v4l2-subdev.c:344:1: note: in expansion of macro 'DEFINE_STATE_WRAPPER'
     344 | DEFINE_STATE_WRAPPER(enum_mbus_code, struct v4l2_subdev_mbus_code_enum);
         | ^~~~~~~~~~~~~~~~~~~~
   drivers/media/v4l2-core/v4l2-subdev.c: In function 'call_enum_frame_size_state':
>> drivers/media/v4l2-core/v4l2-subdev.c:335:31: warning: assignment to 'struct v4l2_subdev_state *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
     335 |                         state = v4l2_subdev_lock_and_get_active_state(sd); \
         |                               ^
   drivers/media/v4l2-core/v4l2-subdev.c:345:1: note: in expansion of macro 'DEFINE_STATE_WRAPPER'
     345 | DEFINE_STATE_WRAPPER(enum_frame_size, struct v4l2_subdev_frame_size_enum);
         | ^~~~~~~~~~~~~~~~~~~~
   drivers/media/v4l2-core/v4l2-subdev.c: In function 'call_enum_frame_interval_state':
>> drivers/media/v4l2-core/v4l2-subdev.c:335:31: warning: assignment to 'struct v4l2_subdev_state *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
     335 |                         state = v4l2_subdev_lock_and_get_active_state(sd); \
         |                               ^
   drivers/media/v4l2-core/v4l2-subdev.c:346:1: note: in expansion of macro 'DEFINE_STATE_WRAPPER'
     346 | DEFINE_STATE_WRAPPER(enum_frame_interval, struct v4l2_subdev_frame_interval_enum);
         | ^~~~~~~~~~~~~~~~~~~~
   drivers/media/v4l2-core/v4l2-subdev.c: In function 'call_get_selection_state':
>> drivers/media/v4l2-core/v4l2-subdev.c:335:31: warning: assignment to 'struct v4l2_subdev_state *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
     335 |                         state = v4l2_subdev_lock_and_get_active_state(sd); \
         |                               ^
   drivers/media/v4l2-core/v4l2-subdev.c:347:1: note: in expansion of macro 'DEFINE_STATE_WRAPPER'
     347 | DEFINE_STATE_WRAPPER(get_selection, struct v4l2_subdev_selection);
         | ^~~~~~~~~~~~~~~~~~~~
   drivers/media/v4l2-core/v4l2-subdev.c: In function 'call_set_selection_state':
>> drivers/media/v4l2-core/v4l2-subdev.c:335:31: warning: assignment to 'struct v4l2_subdev_state *' from 'int' makes pointer from integer without a cast [-Wint-conversion]
     335 |                         state = v4l2_subdev_lock_and_get_active_state(sd); \
         |                               ^
   drivers/media/v4l2-core/v4l2-subdev.c:348:1: note: in expansion of macro 'DEFINE_STATE_WRAPPER'
     348 | DEFINE_STATE_WRAPPER(set_selection, struct v4l2_subdev_selection);
         | ^~~~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors


vim +/v4l2_subdev_lock_and_get_active_state +335 drivers/media/v4l2-core/v4l2-subdev.c

   321	
   322	/*
   323	 * Create state-management wrapper for pad ops dealing with subdev state. The
   324	 * wrapper handles the case where the caller does not provide the called
   325	 * subdev's state. This should be removed when all the callers are fixed.
   326	 */
   327	#define DEFINE_STATE_WRAPPER(f, arg_type)                                  \
   328		static int call_##f##_state(struct v4l2_subdev *sd,                \
   329					    struct v4l2_subdev_state *_state,      \
   330					    arg_type *format)                      \
   331		{                                                                  \
   332			struct v4l2_subdev_state *state = _state;                  \
   333			int ret;                                                   \
   334			if (!_state)                                               \
 > 335				state = v4l2_subdev_lock_and_get_active_state(sd); \
   336			ret = call_##f(sd, state, format);                         \
   337			if (!_state && state)                                      \
 > 338				v4l2_subdev_unlock_state(state);                   \
   339			return ret;                                                \
   340		}
   341	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ