[PATCH] macros to detect existance of unlocked_ioctl and ioctl_compat

From: Michael S. Tsirkin
Date: Thu Jan 06 2005 - 09:06:51 EST


Hello!
Quoting r. Andrew Morton (akpm@xxxxxxxx) "Re: [PATCH] deprecate (un)register_ioctl32_conversion":
> Takashi Iwai <tiwai@xxxxxxx> wrote:
> >
> > At Wed, 5 Jan 2005 16:40:43 +0200,
> > Michael S. Tsirkin wrote:
> > >
> > > Hello, Andrew, all!
> > >
> > > Since in -mm1 we now have a race-free replacement (that being ioctl_compat),
> > > here is a patch to deprecate (un)register_ioctl32_conversion.
> >
> > Good to see that ioctl_native and ioctl_compat ops are already there!
> >
> > Will it be merged to 2.6.11?
>
> It should be, unless there's some problem. In maybe a week or so.

To make life bearable for out-of kernel modules, the following patch
adds 2 macros so that existance of unlocked_ioctl and ioctl_compat
can be easily detected.

Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxxxxxx>

diff -puN include/linux/fs.h~ioctl-rework include/linux/fs.h
--- 25/include/linux/fs.h~ioctl-rework Thu Dec 16 15:48:31 2004
+++ 25-akpm/include/linux/fs.h Thu Dec 16 15:48:31 2004
@@ -907,6 +907,12 @@ typedef struct {

typedef int (*read_actor_t)(read_descriptor_t *, struct page *, unsigned long, unsigned long);

+/* These macros are for out of kernel modules to test that
+ * the kernel supports the unlocked_ioctl and ioctl_compat
+ * fields in struct file_operations. */
+#define HAVE_IOCTL_COMPAT 1
+#define HAVE_UNLOCKED_IOCTL 1
+
/*
* NOTE:
* read, write, poll, fsync, readv, writev can be called
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/