On Wed, 2004-09-01 at 09:22, Michael S. Tsirkin wrote: > Hello! > Currently, on the x86_64 architecture, its quite tricky to make > a char device ioctl work for an x86 executables. > In particular, > 1. there is a requirement that ioctl number is unique - > which is hard to guarantee especially for out of kernel modules well... external modules thus should be really really careful with ioctls then and not embrace and extend too much but just use existing ones instead when reasonable > 2. there's a performance huge overhead for each compat call - there's > a hash lookup in a global hash inside a lock_kernel - > and I think compat performance *is* important. such is life > > Further, adding a command to the ioctl suddenly requires changing > two places - registration code and ioctl itself. adding ioctls SHOULD be painful. Really painful. It's similar to adding syscalls; you'll have to keep compatibility basically forever so adding should not be an easy thing.