Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7ffa05e0518ebc055ef8f68d7d53e5f7d2ba3428
Commit:     7ffa05e0518ebc055ef8f68d7d53e5f7d2ba3428
Parent:     47a184a80800dd69abd1206eea1b961070ce2ca3
Author:     Ian Romanick <[EMAIL PROTECTED]>
AuthorDate: Thu Nov 22 17:02:08 2007 +1000
Committer:  Dave Airlie <[EMAIL PROTECTED]>
CommitDate: Thu Feb 7 15:09:39 2008 +1000

    drm: Fix ioc32 compat layer
    
    Previously any ioctls that weren't explicitly listed in the compat ioctl
    table would fail with ENOTTY.  If the incoming ioctl number is outside the
    range of the table, assume that it Just Works, and pass it off to drm_ioctl.
    This make the fence related ioctls work on 64-bit PowerPC.
    
    Signed-off-by: Dave Airlie <[EMAIL PROTECTED]>
---
 drivers/char/drm/drm_ioc32.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/drivers/char/drm/drm_ioc32.c b/drivers/char/drm/drm_ioc32.c
index 2286f33..90f5a8d 100644
--- a/drivers/char/drm/drm_ioc32.c
+++ b/drivers/char/drm/drm_ioc32.c
@@ -1051,8 +1051,12 @@ long drm_compat_ioctl(struct file *filp, unsigned int 
cmd, unsigned long arg)
        drm_ioctl_compat_t *fn;
        int ret;
 
+       /* Assume that ioctls without an explicit compat routine will just
+        * work.  This may not always be a good assumption, but it's better
+        * than always failing.
+        */
        if (nr >= ARRAY_SIZE(drm_compat_ioctls))
-               return -ENOTTY;
+               return drm_ioctl(filp->f_dentry->d_inode, filp, cmd, arg);
 
        fn = drm_compat_ioctls[nr];
 
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to