On 5 feb 2007, at 23:07, Alan wrote: > atomic_t on many platforms isn't that efficient and there are more > cases > where the atomic bit operations are fast. How about using > test_bit/set_bit/clear_bit/etc
I don't know. The thing is, I want something different from atomicity. In itself, atomically setting a variable to a value is not a very impressive achievement. This is different for bit operations, but I'm not interested in bit operations at all. What I really want is ordered access and volatility. I want exactly the kind of semantics that Java defines for volatile variables. For example in acm_tty_unthrottle, where it says: atomic_set(&acm->throttle, 0); tasklet_schedule(&acm->urb_task); I want to guarantee that the tasklet will actually see the effect of setting acm->throttle to 0, even if the tasklet runs on a different CPU and even though I did not take a lock while manipulating the throttle variable. I think that atomic_t gives me this ordering guarantee, but now I'm not sure anymore. The kernel docs are also not very clear on this subject. Ok, I'm all confused now. Who understands how this works? Thanks, Joris. ------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier. Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 _______________________________________________ linux-usb-devel@lists.sourceforge.net To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel