Steve, On Mon, 13 Feb 2006, Steve Schefter wrote:
> Brian F. G. Bidulock wrote: > > > - For LiS I will rip the ioctl conversion hash table and the cdrom > > conversion functions from the system map and override the CDROM > > ioctls with a function that checks for character or block device and > > then either calls the CDROM conversion or calls the STREAMS > > conversions. > > > > - For Linux Fast-STREAMS I will take the same approach before kernel > > 2.6.11. For kernel 2.6.11 and beyond I will define the compat_ioctl > > file operation to perform device specific conversions. (LiS cannot > > handle unlocked ioctls so this approach is pointless for LiS.) > > Why does LiS need the kernel lock for ioctls? Because it is has many races, is not thread safe, and locks on SMP kernels. Running unlocked ioctls would like introduce an additional set of problems in this regard that might negatively affect existing drivers. > What about using compat_ioctl() for LiS and have the underlying function > grab the kernel lock before it does anything else? Because the locked ioctl path does not need to release the kernel lock in the first place. Also because I don't care to do too much work on LiS as Linux Fast-STREAMS is superior. Besides, the RH EL4 2.6.9 kernel is here to stay for quite a while and it does not support compat_ioctl. Do you think it really makes that much difference? --brian -- Brian F. G. Bidulock ¦ The reasonable man adapts himself to the ¦ [EMAIL PROTECTED] ¦ world; the unreasonable one persists in ¦ http://www.openss7.org/ ¦ trying to adapt the world to himself. ¦ ¦ Therefore all progress depends on the ¦ ¦ unreasonable man. -- George Bernard Shaw ¦ _______________________________________________ Linux-streams mailing list [email protected] http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams
