* [sailus-media-tree:test 19/20] drivers/media/v4l2-core/v4l2-subdev.c:1473:6: warning: variable 'ret' is uninitialized when used here
@ 2023-11-26 23:31 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2023-11-26 23:31 UTC (permalink / raw)
To: Laurent Pinchart; +Cc: llvm, oe-kbuild-all, linux-media, Sakari Ailus
tree: git://linuxtv.org/sailus/media_tree.git test
head: 1c12986c58defb1d262ac0fa851066fc724e617e
commit: 4c7fd566e013fd0ec5cfc3243b63bf2804c4e9fe [19/20] media: v4l2-subdev: Rename .init_cfg() operation to .init_state()
config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20231127/202311270412.AMfCcbby-lkp@intel.com/config)
compiler: clang version 16.0.4 (https://github.com/llvm/llvm-project.git ae42196bc493ffe877a7e3dff8be32035dea4d07)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20231127/202311270412.AMfCcbby-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/202311270412.AMfCcbby-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/media/v4l2-core/v4l2-subdev.c:1473:6: warning: variable 'ret' is uninitialized when used here [-Wuninitialized]
if (ret < 0 && ret != -ENOIOCTLCMD)
^~~
drivers/media/v4l2-core/v4l2-subdev.c:1439:9: note: initialize the variable 'ret' to silence this warning
int ret;
^
= 0
1 warning generated.
vim +/ret +1473 drivers/media/v4l2-core/v4l2-subdev.c
33c0ddbe56905c Tomi Valkeinen 2021-07-15 1433
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1434 struct v4l2_subdev_state *
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1435 __v4l2_subdev_state_alloc(struct v4l2_subdev *sd, const char *lock_name,
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1436 struct lock_class_key *lock_key)
9b02cbb3ede89b Laurent Pinchart 2015-04-24 1437 {
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1438 struct v4l2_subdev_state *state;
9b02cbb3ede89b Laurent Pinchart 2015-04-24 1439 int ret;
9b02cbb3ede89b Laurent Pinchart 2015-04-24 1440
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1441 state = kzalloc(sizeof(*state), GFP_KERNEL);
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1442 if (!state)
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1443 return ERR_PTR(-ENOMEM);
9b02cbb3ede89b Laurent Pinchart 2015-04-24 1444
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1445 __mutex_init(&state->_lock, lock_name, lock_key);
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1446 if (sd->state_lock)
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1447 state->lock = sd->state_lock;
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1448 else
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1449 state->lock = &state->_lock;
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1450
52c2575db8faa1 Sakari Ailus 2023-10-13 1451 state->sd = sd;
52c2575db8faa1 Sakari Ailus 2023-10-13 1452
2f91e10ee6fd4c Tomi Valkeinen 2021-12-21 1453 /* Drivers that support streams do not need the legacy pad config */
2f91e10ee6fd4c Tomi Valkeinen 2021-12-21 1454 if (!(sd->flags & V4L2_SUBDEV_FL_STREAMS) && sd->entity.num_pads) {
8af592e2ecbcd2 Hans Verkuil 2022-05-02 1455 state->pads = kvcalloc(sd->entity.num_pads,
8af592e2ecbcd2 Hans Verkuil 2022-05-02 1456 sizeof(*state->pads), GFP_KERNEL);
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1457 if (!state->pads) {
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1458 ret = -ENOMEM;
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1459 goto err;
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1460 }
9b02cbb3ede89b Laurent Pinchart 2015-04-24 1461 }
9b02cbb3ede89b Laurent Pinchart 2015-04-24 1462
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1463 /*
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1464 * There can be no race at this point, but we lock the state anyway to
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1465 * satisfy lockdep checks.
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1466 */
4c7fd566e013fd Laurent Pinchart 2023-11-26 1467 if (sd->internal_ops && sd->internal_ops->init_state) {
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1468 v4l2_subdev_lock_state(state);
4c7fd566e013fd Laurent Pinchart 2023-11-26 1469 sd->internal_ops->init_state(sd, state);
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1470 v4l2_subdev_unlock_state(state);
4c7fd566e013fd Laurent Pinchart 2023-11-26 1471 }
ed647ea668fb27 Tomi Valkeinen 2022-04-12 1472
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 @1473 if (ret < 0 && ret != -ENOIOCTLCMD)
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1474 goto err;
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1475
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1476 return state;
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1477
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1478 err:
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1479 if (state && state->pads)
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1480 kvfree(state->pads);
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1481
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1482 kfree(state);
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1483
0d346d2a6f54f0 Tomi Valkeinen 2021-06-10 1484 return ERR_PTR(ret);
9b02cbb3ede89b Laurent Pinchart 2015-04-24 1485 }
40aaab9d773b07 Tomi Valkeinen 2022-04-12 1486 EXPORT_SYMBOL_GPL(__v4l2_subdev_state_alloc);
9b02cbb3ede89b Laurent Pinchart 2015-04-24 1487
:::::: The code at line 1473 was first introduced by commit
:::::: 0d346d2a6f54f06f36b224fd27cd6eafe8c83be9 media: v4l2-subdev: add subdev-wide state struct
:::::: TO: Tomi Valkeinen <tomi.valkeinen@ideasonboard.com>
:::::: CC: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
--
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:[~2023-11-26 23:32 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-26 23:31 [sailus-media-tree:test 19/20] drivers/media/v4l2-core/v4l2-subdev.c:1473:6: warning: variable 'ret' is uninitialized when used here 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.