Re: Ioctl size mask

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Apr 16, 2001 at 08:42:41PM +0200, Geert Uytterhoeven wrote:

> > #define _IOWR(type,nr,size) 			
> > 	_IOC(_IOC_READ|_IOC_WRITE,(type),(nr),sizeof(size))                          
> > 
> > 
> > and _IOC uses size in this way:
> > 
> > (((size) & _IOC_SLMASK) << _IOC_SIZESHIFT))           // (_IOC_SLMMASK = 0xff)
> > 
> > 
> > The limited size causes problems on drivers that use size mask to their 
> > needs, while officialy the allowed limit is 2^13 ( 8kB) by definition .
> 
> This was fixed in the CVS tree some weeks ago.

Small addendum to the fix - while it made some ioctls usable it also did
result in the affected ioctl number changing which may have broken some
software that _appeared_ to be working before.  One example is autofs.
Just recompile against the updated kernel headers and everything will be
ok.

The effect gets more visible on the 64-bit kernel which will spit kernel
messages for unknown ioctls.

  Ralf


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux