On Wednesday 02 May 2007, Paul Fulghum wrote: > + switch (cmd) { > + > + case MGSL_IOCSPARAMS32: > + rc = set_params32(info, (struct MGSL_PARAMS32 __user > *)compat_ptr(arg)); > + break; > + > + case MGSL_IOCGPARAMS32: > + rc = get_params32(info, (struct MGSL_PARAMS32 __user > *)compat_ptr(arg)); > + break;
No need for the cast here. > + > + spin_lock_irqsave(&info->lock, flags); no need for _irqsave, just use spin_{,un}lock_irq() when you know that interrupts are enabled. > --- a/include/linux/synclink.h 2007-04-25 22:08:32.000000000 -0500 > +++ b/include/linux/synclink.h 2007-05-02 14:59:17.000000000 -0500 > @@ -167,6 +167,24 @@ typedef struct _MGSL_PARAMS > > } MGSL_PARAMS, *PMGSL_PARAMS; > > +/* provide 32 bit ioctl compatibility on 64 bit systems */ > +struct MGSL_PARAMS32 > +{ > + unsigned int mode; > + unsigned char loopback; > + unsigned short flags; > + unsigned char encoding; > + unsigned int clock_speed; > + unsigned char addr_filter; > + unsigned short crc_type; > + unsigned char preamble_length; > + unsigned char preamble; > + unsigned int data_rate; > + unsigned char data_bits; > + unsigned char stop_bits; > + unsigned char parity; > +}; The definition is correct, but by convention it would be better to use compat_ulong_t instead of unsigned int for those fields that are an unsigned long in native mode. Arnd <>< - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/