diff options
author | Jeff Dike <jdike@addtoit.com> | 2007-10-16 08:27:08 (GMT) |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-10-16 16:43:06 (GMT) |
commit | 8ca842c4b5cbc70b9180617e9f26b6ac9f40dbb9 (patch) | |
tree | fe3e4deeae82c7063a72ecb3fdcae47422d6de0e /arch/um/drivers/chan_user.c | |
parent | 28078e8f9790be0854a54f06de822689ab571944 (diff) | |
download | linux-8ca842c4b5cbc70b9180617e9f26b6ac9f40dbb9.tar.xz |
uml: remove os_* usage from userspace files
This patch fixes some userspace files which were calling libc through the os_*
wrappers.
It turns out that there was only one user of os_new_tty_pgrp, so it can be
deleted.
There are also some style and whitespace fixes in here.
Signed-off-by: Jeff Dike <jdike@linux.intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/um/drivers/chan_user.c')
-rw-r--r-- | arch/um/drivers/chan_user.c | 37 |
1 files changed, 21 insertions, 16 deletions
diff --git a/arch/um/drivers/chan_user.c b/arch/um/drivers/chan_user.c index 74f22d2..8443d37 100644 --- a/arch/um/drivers/chan_user.c +++ b/arch/um/drivers/chan_user.c @@ -134,12 +134,12 @@ static int winch_thread(void *arg) struct winch_data *data = arg; sigset_t sigs; int pty_fd, pipe_fd; - int count, err; + int count; char c = 1; pty_fd = data->pty_fd; pipe_fd = data->pipe_fd; - count = os_write_file(pipe_fd, &c, sizeof(c)); + count = write(pipe_fd, &c, sizeof(c)); if (count != sizeof(c)) printk(UM_KERN_ERR "winch_thread : failed to write " "synchronization byte, err = %d\n", -count); @@ -167,10 +167,15 @@ static int winch_thread(void *arg) exit(1); } - err = os_new_tty_pgrp(pty_fd, os_getpid()); - if (err < 0) { - printk(UM_KERN_ERR "winch_thread : new_tty_pgrp failed on " - "fd %d err = %d\n", pty_fd, -err); + if(ioctl(pty_fd, TIOCSCTTY, 0) < 0){ + printk(UM_KERN_ERR "winch_thread : TIOCSCTTY failed on " + "fd %d err = %d\n", pty_fd, errno); + exit(1); + } + + if(tcsetpgrp(pty_fd, os_getpid()) < 0){ + printk(UM_KERN_ERR "winch_thread : tcsetpgrp failed on " + "fd %d err = %d\n", pty_fd, errno); exit(1); } @@ -180,10 +185,10 @@ static int winch_thread(void *arg) * kernel semaphores. We don't use SysV semaphores because they are * persistent. */ - count = os_read_file(pipe_fd, &c, sizeof(c)); + count = read(pipe_fd, &c, sizeof(c)); if (count != sizeof(c)) printk(UM_KERN_ERR "winch_thread : failed to read " - "synchronization byte, err = %d\n", -count); + "synchronization byte, err = %d\n", errno); while(1) { /* @@ -192,10 +197,10 @@ static int winch_thread(void *arg) */ sigsuspend(&sigs); - count = os_write_file(pipe_fd, &c, sizeof(c)); + count = write(pipe_fd, &c, sizeof(c)); if (count != sizeof(c)) printk(UM_KERN_ERR "winch_thread : write failed, " - "err = %d\n", -count); + "err = %d\n", errno); } } @@ -229,11 +234,11 @@ static int winch_tramp(int fd, struct tty_struct *tty, int *fd_out, } *fd_out = fds[0]; - n = os_read_file(fds[0], &c, sizeof(c)); + n = read(fds[0], &c, sizeof(c)); if (n != sizeof(c)) { printk(UM_KERN_ERR "winch_tramp : failed to read " "synchronization byte\n"); - printk(UM_KERN_ERR "read failed, err = %d\n", -n); + printk(UM_KERN_ERR "read failed, err = %d\n", errno); printk(UM_KERN_ERR "fd %d will not support SIGWINCH\n", fd); err = -EINVAL; goto out_close; @@ -248,8 +253,8 @@ static int winch_tramp(int fd, struct tty_struct *tty, int *fd_out, return err; out_close: - os_close_file(fds[1]); - os_close_file(fds[0]); + close(fds[1]); + close(fds[0]); out: return err; } @@ -271,9 +276,9 @@ void register_winch(int fd, struct tty_struct *tty) register_winch_irq(thread_fd, fd, thread, tty, stack); - count = os_write_file(thread_fd, &c, sizeof(c)); + count = write(thread_fd, &c, sizeof(c)); if (count != sizeof(c)) printk(UM_KERN_ERR "register_winch : failed to write " - "synchronization byte, err = %d\n", -count); + "synchronization byte, err = %d\n", errno); } } |