Messages in this thread | | | Date | Mon, 7 Dec 1998 10:53:38 -0500 (EST) | From | "Jason A. Pfeil" <> | Subject | Is this the right list? |
| |
To all respected and revered Linux developers,
I apologize in advance in case this is not the right forum for my questions. I am a candidate for a Master's degree in Computer Science, and my project deals in adding functionality to the TCP/IP stack in linux. I am running into some problems, and I am curious about some synchronization mechanisms I am using. When is it safe and not safe to use the start_bh_atomic() and end_bh_atomic() calls to try to guarantee single access to critical sections of code? I am working on the 2.0.36 kernel until I get this working, then I will port it to 2.1.x or 2.2.x (if it's released before I finish). If start/end_bh_atomic() is not supposed to be used for a general synch. mechanism, is there one to use, or should I roll my own? Also, when I look at the defs for the start/end_bh_atomic() calls, they reference a function called barrier() that is #defined as:
#define barrier() __asm__("": : :"memory")
I have never seen an assembly instruction like this, and I was wondering if I could ask anyone what this was and how to use it so that if I have to, I can roll my own synch. mechanisms.
Thank you in advance for your time.
Sincerely,
Jason Pfeil
---- Jason A. Pfeil pfeil@cs.fsu.edu Information Systems Developer jpfeil@lsi.fsu.edu CASDL (850)644-8014; fax: (850)644-4952 Learning Systems Institute University Center C-3527 http://idl.fsu.edu Tallahassee, FL 32306-2540
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |