Hi, I am currently on Linux 2.6.18, x86_64. I came across strange behavior while working on one of busybox applets. I narrowed it down to these two trivial testcases:
#include <unistd.h> #include <fcntl.h> int main() { fcntl(0, F_SETFL, fcntl(0, F_GETFL, 0) | O_NONBLOCK); return 0; } #include <unistd.h> #include <fcntl.h> int main() { fcntl(0, F_SETFL, fcntl(0, F_GETFL, 0) & ~O_NONBLOCK); return 0; } If I run "nonblock" in Midnight Commander in KDE's Konsole, screen redraw starts to work ~5 times slower. For example, Ctrl-O ("show/hide panels" in MC) takes ~0.5 sec to redraw. This persists after the program exist (which it does immediately as you see). Running "block" reverts things to normal. I mean: how can O_NONBLOCK _issued in a process which already exited_ have any effect whatsoever on MC or Konsole? They can't even know that it did it, right? Either I do not know something subtle about Unix or some sort of bug is at work. Any advice? -- vda - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/