lkml.org 
[lkml]   [2013]   [Jun]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] vfio: fix crash on rmmod
    Date
    devtmpfs_delete_node() calls devnode() callback with mode==NULL but
    vfio still tries to write there.

    The patch fixes this.

    Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>

    ---

    Steps to reproduce on freshly booted system with no devices given to VFIO:
    modprobe vfio
    rmmod vfio_iommu_spapr_tce
    rmmod vfio
    ---
    drivers/vfio/vfio.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    diff --git a/drivers/vfio/vfio.c b/drivers/vfio/vfio.c
    index 523c121..259ad28 100644
    --- a/drivers/vfio/vfio.c
    +++ b/drivers/vfio/vfio.c
    @@ -1360,7 +1360,7 @@ static const struct file_operations vfio_device_fops = {
    */
    static char *vfio_devnode(struct device *dev, umode_t *mode)
    {
    - if (MINOR(dev->devt) == 0)
    + if (mode && (MINOR(dev->devt) == 0))
    *mode = S_IRUGO | S_IWUGO;

    return kasprintf(GFP_KERNEL, "vfio/%s", dev_name(dev));
    --
    1.7.10.4


    \
     
     \ /
      Last update: 2013-06-05 08:21    [W:3.493 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site