diff options
author | Thierry Reding <treding@nvidia.com> | 2013-09-03 08:50:39 +0200 |
---|---|---|
committer | Thierry Reding <treding@nvidia.com> | 2013-09-03 10:10:11 +0200 |
commit | 03c961ba6d04786c8a7e7df118538a01f442e90b (patch) | |
tree | b2f2a2fdce603585275f87a25934bddb8fc7d310 /drivers/gpu/host1x | |
parent | 745cecc07cee878a5afdda40d13f8b0901a88ebd (diff) | |
download | linux-03c961ba6d04786c8a7e7df118538a01f442e90b.tar.gz linux-03c961ba6d04786c8a7e7df118538a01f442e90b.tar.bz2 linux-03c961ba6d04786c8a7e7df118538a01f442e90b.zip |
gpu: host1x: Check for valid host1x pointer
Under rare circumstances it can happen that the host1x driver's .probe()
doesn't finish properly, in which case the device's driver-specific data
will not be set. Instead of crashing in such a situation, propagate the
error to callers of the host1x_get_drm_data() function.
Signed-off-by: Thierry Reding <treding@nvidia.com>
Diffstat (limited to 'drivers/gpu/host1x')
-rw-r--r-- | drivers/gpu/host1x/dev.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/gpu/host1x/dev.c b/drivers/gpu/host1x/dev.c index 28e28a23d444..471630299878 100644 --- a/drivers/gpu/host1x/dev.c +++ b/drivers/gpu/host1x/dev.c @@ -43,7 +43,7 @@ void host1x_set_drm_data(struct device *dev, void *data) void *host1x_get_drm_data(struct device *dev) { struct host1x *host1x = dev_get_drvdata(dev); - return host1x->drm_data; + return host1x ? host1x->drm_data : NULL; } void host1x_sync_writel(struct host1x *host1x, u32 v, u32 r) |