Gary, On Wed, 10 May 2006, Gary Schumacher wrote:
> > We are making use of the lis_register_driver_qlock_option method to > remove the qlock protection on some of our drivers and have some > question on the correct way to use it. If the driver is a clone > driver If you mean that you are using the option in an attempt to remove private locks from your fully MP-safe drivers, that would be a bad idea from the perspective of STREAMS design. Fully MP-safe drivers are always preferred to using any STREAMS synchronization. Also, the synchronization added to LiS 2.18.0 has never been tested and fails inspection in a number of places. It is easy to crash or lock a kernel on LiS 2.18 on SMP kernels (does not even have to be an SMP machine). OpenSS7 project drivers lock up easinly on LiS 2.18 in this fashion and use private locks and are MP-safe. The very same drivers run on Linux Fast-STREAMS under full SMP without any locking problems. If you are considering using LiS syncrhonization mechanisms because you are experiencing kernel locks or crashes on SMP, the problem is most likely LiS, not the locking in your driver. > > I suspect that we would use the major number returned by the register > call. What is the queue locking state of the clone driver and do we > need to control this also? Yes lis_register_driver_qlock_option uses the major number returned by the register call and is applicable to all clone minors of the major device number. --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
