Hello Hackers, I've got a problem with a hybrid Linux Task. I want to create a little tool to tranfser data between two L4Linuxes easily. A tool similar to the famous netcat but using IPC instead of UDP/TCP. So far so good. Server is listen for client and client is sending data to the server (using long IPC transfering data as dwords). The problem is that the data doesn't arrive at the server task. There only an empty IPC message gets received (no IPC error).
After I've played around a while with debug messages I got strange results. Using debug messages (simple printf()) inbetween and the transfer succedes! Digging a little deeper got me to the point that it must be a problem with the compiler. Using 'gcc -O0' generates working code too - 'gcc -O2' doesn't. Trying another compiler (gcc version 4.0.1 (Debian 4.0.1-2)) with -O2 got me also working code. So my question is if really my gcc (version 3.3.5 (Debian 1:3.3.5-13)) is broken or the includes under l4/l4sys/.../ipc.h. Maybe the inline assembly isn't that clean? But just a guess. My GNU assembly knowlegde isn't that good. Greets, Mathias PS: I'm runing Debian sarge over here. _______________________________________________ l4-hackers mailing list l4-hackers@os.inf.tu-dresden.de http://os.inf.tu-dresden.de/mailman/listinfo/l4-hackers