On Wed, Jan 19, 2005 at 07:55:01AM -0800, James Bottomley wrote:
> On Wed, 2005-01-19 at 00:27 +0100, Andi Kleen wrote:
> > On Tue, Jan 18, 2005 at 07:35:36AM -0800, James Bottomley wrote:
> > > Shouldn't this also be surrounded by #ifdef CONFIG_COMPAT (on the
> > > grounds that you never fill it in unless CONFIG_COMPAT is defined)?
> > 
> > At least the standard file_operations has it without ifdef. 
> > I guess it doesn't hurt too much even on non compat systems.
> 
> Well, I wasn't really thinking of saving the four or eight bytes for the
> pointer:  It looks, from all the other patches, that the policy is that
> any compat ioctl code should be surrounded by #ifdef CONFIG_COMPAT.
> Thus, an easy way to enforce this policy is to do the same to the
> structure definition, so the compiler will error if the driver writer
> doesn't do it and tries to compile on a non-CONFIG_COMPAT platform.

Here's a new patch with the ifdef.


Add compat_ioctl vector to scsi_host.

Signed-off-by: Andi Kleen <[EMAIL PROTECTED]>

diff -u linux-2.6.11-rc1-bk4/include/scsi/scsi_host.h-o 
linux-2.6.11-rc1-bk4/include/scsi/scsi_host.h
--- linux-2.6.11-rc1-bk4/include/scsi/scsi_host.h-o     2005-01-14 
10:12:26.000000000 +0100
+++ linux-2.6.11-rc1-bk4/include/scsi/scsi_host.h       2005-01-19 
17:01:21.000000000 +0100
@@ -71,7 +71,18 @@
         * Status: OPTIONAL
         */
        int (* ioctl)(struct scsi_device *dev, int cmd, void __user *arg);
-       
+
+
+#ifdef CONFIG_COMPAT
+       /* 
+        * Compat handler. Handle 32bit ABI.
+        * When unknown ioctl is passed return -ENOIOCTLCMD.
+        *
+        * Status: OPTIONAL
+        */
+       int (* compat_ioctl)(struct scsi_device *dev, int cmd, void __user 
*arg);
+#endif
+
        /*
         * The queuecommand function is used to queue up a scsi
         * command block to the LLDD.  When the driver finished
diff -u linux-2.6.11-rc1-bk4/include/scsi/scsi_ioctl.h-o 
linux-2.6.11-rc1-bk4/include/scsi/scsi_ioctl.h
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to