Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8ca842c4 authored by Jeff Dike's avatar Jeff Dike Committed by Linus Torvalds
Browse files

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: default avatarJeff Dike <jdike@linux.intel.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 28078e8f
Loading
Loading
Loading
Loading
+21 −16
Original line number Diff line number Diff line
@@ -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);
	}
}
+27 −27
Original line number Diff line number Diff line
/*
 * Copyright (C) 2002 Jeff Dike (jdike@karaya.com)
 * Copyright (C) 2002 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
 * Licensed under the GPL
 */

#include <stdio.h>
#include <unistd.h>
#include <errno.h>
#include "user.h"
#include "mconsole.h"
#include "os.h"
#include "user.h"

struct dog_data {
	int stdin;
@@ -23,10 +22,10 @@ static void pre_exec(void *d)
	dup2(data->stdin, 0);
	dup2(data->stdout, 1);
	dup2(data->stdout, 2);
	os_close_file(data->stdin);
	os_close_file(data->stdout);
	os_close_file(data->close_me[0]);
	os_close_file(data->close_me[1]);
	close(data->stdin);
	close(data->stdout);
	close(data->close_me[0]);
	close(data->close_me[1]);
}

int start_watchdog(int *in_fd_ret, int *out_fd_ret, char *sock)
@@ -68,8 +67,8 @@ int start_watchdog(int *in_fd_ret, int *out_fd_ret, char *sock)

	pid = run_helper(pre_exec, &data, args);

	os_close_file(out_fds[0]);
	os_close_file(in_fds[1]);
	close(out_fds[0]);
	close(in_fds[1]);

	if (pid < 0) {
		err = -pid;
@@ -77,7 +76,7 @@ int start_watchdog(int *in_fd_ret, int *out_fd_ret, char *sock)
		goto out_close_out;
	}

	n = os_read_file(in_fds[0], &c, sizeof(c));
	n = read(in_fds[0], &c, sizeof(c));
	if (n == 0) {
		printk("harddog_open - EOF on watchdog pipe\n");
		helper_wait(pid);
@@ -86,7 +85,7 @@ int start_watchdog(int *in_fd_ret, int *out_fd_ret, char *sock)
	}
	else if (n < 0) {
		printk("harddog_open - read of watchdog pipe failed, "
		       "err = %d\n", -n);
		       "err = %d\n", errno);
		helper_wait(pid);
		err = n;
		goto out_close_out;
@@ -96,19 +95,19 @@ int start_watchdog(int *in_fd_ret, int *out_fd_ret, char *sock)
	return 0;

 out_close_in:
	os_close_file(in_fds[0]);
	os_close_file(in_fds[1]);
	close(in_fds[0]);
	close(in_fds[1]);
 out_close_out:
	os_close_file(out_fds[0]);
	os_close_file(out_fds[1]);
	close(out_fds[0]);
	close(out_fds[1]);
 out:
	return err;
}

void stop_watchdog(int in_fd, int out_fd)
{
	os_close_file(in_fd);
	os_close_file(out_fd);
	close(in_fd);
	close(out_fd);
}

int ping_watchdog(int fd)
@@ -116,9 +115,10 @@ int ping_watchdog(int fd)
	int n;
	char c = '\n';

	n = os_write_file(fd, &c, sizeof(c));
	n = write(fd, &c, sizeof(c));
	if (n != sizeof(c)) {
		printk("ping_watchdog - write failed, err = %d\n", -n);
		printk("ping_watchdog - write failed, ret = %d, err = %d\n",
		       n, errno);
		if (n < 0)
			return n;
		return -EIO;
+1 −12
Original line number Diff line number Diff line
/*
 * Copyright (C) 2001 Lennert Buytenhek (buytenh@gnu.org)
 * Copyright (C) 2001, 2002 Jeff Dike (jdike@karaya.com)
 * Copyright (C) 2001 - 2007 Jeff Dike (jdike@{addtoit,linux.intel}.com)
 * Licensed under the GPL
 */

@@ -96,14 +96,3 @@ extern void lock_notify(void);
extern void unlock_notify(void);

#endif

/*
 * Overrides for Emacs so that we follow Linus's tabbing style.
 * Emacs will notice this stuff at the end of the file and automatically
 * adjust the settings for this buffer only.  This must remain at the end
 * of the file.
 * ---------------------------------------------------------------------------
 * Local variables:
 * c-file-style: "linux"
 * End:
 */
+0 −1
Original line number Diff line number Diff line
@@ -132,7 +132,6 @@ extern void os_print_error(int error, const char* str);
extern int os_get_exec_close(int fd, int *close_on_exec);
extern int os_set_exec_close(int fd, int close_on_exec);
extern int os_ioctl_generic(int fd, unsigned int cmd, unsigned long arg);
extern int os_new_tty_pgrp(int fd, int pid);
extern int os_get_ifname(int fd, char *namebuf);
extern int os_set_slip(int fd);
extern int os_set_owner(int fd, int pid);
+1 −2
Original line number Diff line number Diff line
@@ -131,7 +131,6 @@ struct syscall_args {
	        val; \
	})


#define UPT_SET(regs, reg, val) \
	do { \
		switch(reg){ \
Loading