linux/drivers/vfio/mdev
Jason Gunthorpe b5a1f8921d vfio/mdev: Do not allow a mdev_type to have a NULL parent pointer
There is a small race where the parent is NULL even though the kobj has
already been made visible in sysfs.

For instance the attribute_group is made visible in sysfs_create_files()
and the mdev_type_attr_show() does:

    ret = attr->show(kobj, type->parent->dev, buf);

Which will crash on NULL parent. Move the parent setup to before the type
pointer leaves the stack frame.

Fixes: 7b96953bc6 ("vfio: Mediated device Core driver")
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Reviewed-by: Max Gurtovoy <mgurtovoy@nvidia.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Message-Id: <2-v2-d36939638fc6+d54-vfio2_jgg@nvidia.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2021-04-07 15:39:16 -06:00
..
Kconfig
Makefile
mdev_core.c vfio-mdev: Wire in a request handler for mdev parent 2020-12-03 16:21:07 -07:00
mdev_driver.c
mdev_private.h Merge branches 'v5.13/vfio/embed-vfio_device', 'v5.13/vfio/misc' and 'v5.13/vfio/nvlink' into v5.13/vfio/next 2021-04-06 12:01:51 -06:00
mdev_sysfs.c vfio/mdev: Do not allow a mdev_type to have a NULL parent pointer 2021-04-07 15:39:16 -06:00
vfio_mdev.c vfio: Remove device_data from the vfio bus driver API 2021-04-06 11:55:11 -06:00