As of now, agp_compat_ioctl already runs without the BKL.  Mutual exclusion
is enforced by agp_fe.agp_mutex in agp_ioctl() and agp_compat_ioctl().
Apply the same locking rationale to the two functions allowing BKL cleanup.
Signed-off-by: Mathieu Segaud <mathieu.segaud@regala.cx>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dave Airlie <airlied@linux.ie>
        return 0;
 }
 
-static int agp_ioctl(struct inode *inode, struct file *file,
+static long agp_ioctl(struct file *file,
                     unsigned int cmd, unsigned long arg)
 {
        struct agp_file_private *curr_priv = file->private_data;
        .llseek         = no_llseek,
        .read           = agp_read,
        .write          = agp_write,
-       .ioctl          = agp_ioctl,
+       .unlocked_ioctl = agp_ioctl,
 #ifdef CONFIG_COMPAT
        .compat_ioctl   = compat_agp_ioctl,
 #endif