From: Tim Sell Date: Thu, 9 Jul 2015 17:27:44 +0000 (-0400) Subject: staging: unisys: prevent faults in visornic_pause X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=5deeea3379b2fc34d07cfb909b2905e9e1116615;p=deliverable%2Flinux.git staging: unisys: prevent faults in visornic_pause Prevent faults in visornic_pause, visornic_resume(), and visornic_remove() Prior to this patch, any call to visornic_pause(), visornic_resume(), or visornic_remove() would fault, due to dev_set_drvdata() never having been called to stash our struct visornic_devdata * into the device's drvdata. I.e., all calls to dev_get_drvdata() were returning NULL, meaning a fault was soon to follow. Signed-off-by: Tim Sell Signed-off-by: Benjamin Romer Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/staging/unisys/visornic/visornic_main.c b/drivers/staging/unisys/visornic/visornic_main.c index fa52e0fa5cbc..72253a07c255 100644 --- a/drivers/staging/unisys/visornic/visornic_main.c +++ b/drivers/staging/unisys/visornic/visornic_main.c @@ -1831,6 +1831,7 @@ static int visornic_probe(struct visor_device *dev) } devdata->netdev = netdev; + dev_set_drvdata(&dev->device, devdata); init_waitqueue_head(&devdata->rsp_queue); spin_lock_init(&devdata->priv_lock); devdata->enabled = 0; /* not yet */