* drivers/s390/crypto/vfio_ap_ops.c:2885:0-1: preceding lock on line 2865
@ 2026-10-03 10:00 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-10-03 10:00 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Julia Lawall
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Anthony Krowiak <akrowiak@linux.ibm.com>
CC: Christian Borntraeger <borntraeger@linux.ibm.com>
CC: Matthew Rosato <mjrosato@linux.ibm.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: e767a4ea70a3992c37ed604157d32f0dfbf9b1e3
commit: d50346801b4f144e42b49cd4f1496010498ab114 s390/vfio-ap: Fix dereference matrix_mdev->kvm without checking for NULL
date: 7 weeks ago
:::::: branch date: 9 hours ago
:::::: commit date: 7 weeks ago
config: s390-randconfig-r2105-20261002 (https://download.01.org/0day-ci/archive/20261003/202610031130.UN60GSBb-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project d7e4505dd447d115d85fdea45cd71030ac1d86ee)
rustc: rustc 1.96.0 (ac68faa20 2026-05-25)
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
| Fixes: d50346801b4f ("s390/vfio-ap: Fix dereference matrix_mdev->kvm without checking for NULL")
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Julia Lawall <julia.lawall@inria.fr>
| Closes: https://lore.kernel.org/r/202610031130.UN60GSBb-lkp@intel.com/
cocci warnings: (new ones prefixed by >>)
>> drivers/s390/crypto/vfio_ap_ops.c:2885:0-1: preceding lock on line 2865
vim +2885 drivers/s390/crypto/vfio_ap_ops.c
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2850
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2851 void vfio_ap_on_scan_complete(struct ap_config_info *new_config_info,
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2852 struct ap_config_info *old_config_info)
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2853 {
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2854 struct ap_matrix_mdev *matrix_mdev;
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2855
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2856 mutex_lock(&matrix_dev->guests_lock);
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2857
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2858 list_for_each_entry(matrix_mdev, &matrix_dev->mdev_list, node) {
d50346801b4f14 Anthony Krowiak 2026-08-12 2859 /*
d50346801b4f14 Anthony Krowiak 2026-08-12 2860 * The mdevs_lock must be held to access fields within matrix_mdev,
d50346801b4f14 Anthony Krowiak 2026-08-12 2861 * and kvm->lock must be taken before mdevs_lock to satisfy the lock
d50346801b4f14 Anthony Krowiak 2026-08-12 2862 * ordering requirement and prevent a lockdep splat.
d50346801b4f14 Anthony Krowiak 2026-08-12 2863 */
d50346801b4f14 Anthony Krowiak 2026-08-12 2864 if (matrix_mdev->kvm)
d50346801b4f14 Anthony Krowiak 2026-08-12 @2865 mutex_lock(&matrix_mdev->kvm->lock);
d50346801b4f14 Anthony Krowiak 2026-08-12 2866 mutex_lock(&matrix_dev->mdevs_lock);
d50346801b4f14 Anthony Krowiak 2026-08-12 2867
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2868 if (bitmap_empty(matrix_mdev->apm_add, AP_DEVICES) &&
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2869 bitmap_empty(matrix_mdev->aqm_add, AP_DOMAINS) &&
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2870 bitmap_empty(matrix_mdev->adm_add, AP_DOMAINS))
d50346801b4f14 Anthony Krowiak 2026-08-12 2871 goto do_unlock;
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2872
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2873 vfio_ap_mdev_hot_plug_cfg(matrix_mdev);
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2874 bitmap_clear(matrix_mdev->apm_add, 0, AP_DEVICES);
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2875 bitmap_clear(matrix_mdev->aqm_add, 0, AP_DOMAINS);
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2876 bitmap_clear(matrix_mdev->adm_add, 0, AP_DOMAINS);
d50346801b4f14 Anthony Krowiak 2026-08-12 2877
d50346801b4f14 Anthony Krowiak 2026-08-12 2878 do_unlock:
d50346801b4f14 Anthony Krowiak 2026-08-12 2879 mutex_unlock(&matrix_dev->mdevs_lock);
d50346801b4f14 Anthony Krowiak 2026-08-12 2880 if (matrix_mdev->kvm)
d50346801b4f14 Anthony Krowiak 2026-08-12 2881 mutex_unlock(&matrix_mdev->kvm->lock);
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2882 }
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2883
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 2884 mutex_unlock(&matrix_dev->guests_lock);
eeb386aeb5b7c8 Tony Krowiak 2022-04-04 @2885 }
:::::: The code at line 2885 was first introduced by commit
:::::: eeb386aeb5b7c8d2dae6a3ba49255d8a97803182 s390/vfio-ap: handle config changed and scan complete notification
:::::: TO: Tony Krowiak <akrowiak@linux.ibm.com>
:::::: CC: Alexander Gordeev <agordeev@linux.ibm.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-10-03 10:01 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-03 10:00 drivers/s390/crypto/vfio_ap_ops.c:2885:0-1: preceding lock on line 2865 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.