aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/char/drm
diff options
context:
space:
mode:
authorDave Airlie <airlied@starflyer.(none)>2006-01-02 19:23:44 +1100
committerDave Airlie <airlied@linux.ie>2006-01-02 19:23:44 +1100
commitb5e9fc13dd0f25a2f422000c185f491bfd4f7335 (patch)
tree217927d6c812fbe99706a3a986acf98899231835 /drivers/char/drm
parentdrm: update PCIGART support from CVS (diff)
downloadlinux-dev-b5e9fc13dd0f25a2f422000c185f491bfd4f7335.tar.xz
linux-dev-b5e9fc13dd0f25a2f422000c185f491bfd4f7335.zip
drm: fix issue with contexts running out of RAM
Signed-off-by: Dave Airlie <airlied@linux.ie>
Diffstat (limited to 'drivers/char/drm')
-rw-r--r--drivers/char/drm/drm_context.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/char/drm/drm_context.c b/drivers/char/drm/drm_context.c
index bdd168d88f49..7a7bcef2aa84 100644
--- a/drivers/char/drm/drm_context.c
+++ b/drivers/char/drm/drm_context.c
@@ -432,6 +432,10 @@ int drm_addctx(struct inode *inode, struct file *filp,
if (ctx.handle != DRM_KERNEL_CONTEXT) {
if (dev->driver->context_ctor)
+ if (dev->driver->context_ctor(dev, ctx.handle)) {
+ DRM_DEBUG("Running out of ctxs or memory.\n");
+ return -ENOMEM;
+ }
dev->driver->context_ctor(dev, ctx.handle);
}