summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjdike <jdike>2003-09-18 14:13:29 +0000
committerjdike <jdike>2003-09-18 14:13:29 +0000
commit1a7e8313c9aeefb64ac1e4a8c66487b62383d19b (patch)
tree228a867529991a3109feb177f948c864f0c48f01
parent4b1f82dc701c8c3ae0a58a2c446d3d7b71cf5bfb (diff)
downloaduml-history-1a7e8313c9aeefb64ac1e4a8c66487b62383d19b.tar.gz
Fixed the loops so they call os_{read,write}_file.
Made got_sigio volatile.
-rw-r--r--arch/um/kernel/sigio_user.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/um/kernel/sigio_user.c b/arch/um/kernel/sigio_user.c
index 250fdfb..acbd8c7 100644
--- a/arch/um/kernel/sigio_user.c
+++ b/arch/um/kernel/sigio_user.c
@@ -25,7 +25,7 @@ int pty_output_sigio = 0;
int pty_close_sigio = 0;
/* Used as a flag during SIGIO testing early in boot */
-static int got_sigio = 0;
+static volatile int got_sigio = 0;
void __init handler(int sig)
{
@@ -104,10 +104,10 @@ static void tty_output(int master, int slave)
memset(buf, 0, sizeof(buf));
- while(write(master, buf, sizeof(buf)) > 0) ;
+ while(os_write_file(master, buf, sizeof(buf)) > 0) ;
if(errno != EAGAIN)
panic("check_sigio : write failed, errno = %d\n", errno);
- while(((n = read(slave, buf, sizeof(buf))) > 0) && !got_sigio) ;
+ while(((n = os_read_file(slave, buf, sizeof(buf))) > 0) && !got_sigio) ;
if(got_sigio){
printk("Yes\n");