summaryrefslogtreecommitdiff
path: root/linux-uml/linux-uml-2.6.7/Add_os_make_pty_raw.patch
diff options
context:
space:
mode:
authorChris Larson <clarson@kergoth.com>2004-12-09 09:47:41 +0000
committerChris Larson <clarson@kergoth.com>2004-12-09 09:47:41 +0000
commit2c5b8ec6d95cf68650265941530e5ce38c8dd6d9 (patch)
treebf879bea7ef8517ba8c3d1286ef300401d3d484c /linux-uml/linux-uml-2.6.7/Add_os_make_pty_raw.patch
parent101e2f1623def0a355d20aacb8bd93810703e834 (diff)
Merge oe-devel@oe-devel.bkbits.net:openembedded
into hyperion.kergoth.com:/home/kergoth/code/openembedded 2004/12/09 03:39:39-06:00 kergoth.com!kergoth Break people's builds again.. this time moving the packages into a packages/ subdir to clean things up a bit. BKrev: 41b81f3dvlp3rU7_8MUXLcI8LDdDoA
Diffstat (limited to 'linux-uml/linux-uml-2.6.7/Add_os_make_pty_raw.patch')
-rw-r--r--linux-uml/linux-uml-2.6.7/Add_os_make_pty_raw.patch114
1 files changed, 0 insertions, 114 deletions
diff --git a/linux-uml/linux-uml-2.6.7/Add_os_make_pty_raw.patch b/linux-uml/linux-uml-2.6.7/Add_os_make_pty_raw.patch
deleted file mode 100644
index 0cb2518722..0000000000
--- a/linux-uml/linux-uml-2.6.7/Add_os_make_pty_raw.patch
+++ /dev/null
@@ -1,114 +0,0 @@
-
-Fixes raw() and uses it in check_one_sigio; also fixes a silly panic (EINTR returned by call).
-
-Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade_spam@yahoo.it>
----
-
- uml-linux-2.6.7-paolo/arch/um/include/user_util.h | 4 ++-
- uml-linux-2.6.7-paolo/arch/um/kernel/sigio_user.c | 11 +++-----
- uml-linux-2.6.7-paolo/arch/um/kernel/user_util.c | 29 ++++++++++++++++++----
- 3 files changed, 31 insertions(+), 13 deletions(-)
-
-diff -puN arch/um/kernel/sigio_user.c~Add_os_make_pty_raw arch/um/kernel/sigio_user.c
---- uml-linux-2.6.7/arch/um/kernel/sigio_user.c~Add_os_make_pty_raw 2004-06-29 21:03:03.157157408 +0200
-+++ uml-linux-2.6.7-paolo/arch/um/kernel/sigio_user.c 2004-06-29 21:03:03.161156800 +0200
-@@ -16,6 +16,7 @@
- #include "init.h"
- #include "user.h"
- #include "kern_util.h"
-+#include "user_util.h"
- #include "sigio.h"
- #include "helper.h"
- #include "os.h"
-@@ -50,7 +51,6 @@ static void openpty_cb(void *arg)
- void __init check_one_sigio(void (*proc)(int, int))
- {
- struct sigaction old, new;
-- struct termios tt;
- struct openpty_arg pty = { .master = -1, .slave = -1 };
- int master, slave, err;
-
-@@ -68,12 +68,9 @@ void __init check_one_sigio(void (*proc)
- return;
- }
-
-- /* XXX These can fail with EINTR */
-- if(tcgetattr(master, &tt) < 0)
-- panic("check_sigio : tcgetattr failed, errno = %d\n", errno);
-- cfmakeraw(&tt);
-- if(tcsetattr(master, TCSADRAIN, &tt) < 0)
-- panic("check_sigio : tcsetattr failed, errno = %d\n", errno);
-+ err = __raw(master, 1, 0); //Not now, but complain so we now where we failed.
-+ if (err < 0)
-+ panic("check_sigio : __raw failed, errno = %d\n", -err);
-
- err = os_sigio_async(master, slave);
- if(err < 0)
-diff -puN arch/um/kernel/user_util.c~Add_os_make_pty_raw arch/um/kernel/user_util.c
---- uml-linux-2.6.7/arch/um/kernel/user_util.c~Add_os_make_pty_raw 2004-06-29 21:03:03.158157256 +0200
-+++ uml-linux-2.6.7-paolo/arch/um/kernel/user_util.c 2004-06-29 21:03:03.162156648 +0200
-@@ -119,18 +119,37 @@ int wait_for_stop(int pid, int sig, int
- }
- }
-
--int raw(int fd, int complain)
-+int __raw(int fd, int complain, int now)
- {
- struct termios tt;
- int err;
-+ int when;
-+
-+ while (((err = tcgetattr(fd, &tt)) < 0) && errno == EINTR)
-+ ;
-+
-+ if (err < 0) {
-+ if (complain)
-+ printk("tcgetattr failed, errno = %d\n", errno);
-+ return(-errno);
-+ }
-
-- tcgetattr(fd, &tt);
- cfmakeraw(&tt);
-- err = tcsetattr(fd, TCSANOW, &tt);
-- if((err < 0) && complain){
-- printk("tcsetattr failed, errno = %d\n", errno);
-+
-+ if (now)
-+ when = TCSANOW;
-+ else
-+ when = TCSADRAIN;
-+
-+ while (((err = tcsetattr(fd, when, &tt)) < 0) && errno == EINTR)
-+ ;
-+ if (err < 0) {
-+ if (complain)
-+ printk("tcsetattr failed, errno = %d\n", errno);
- return(-errno);
- }
-+ /*XXX: tcsetattr could have applied only some changes
-+ * (and cfmakeraw() is a set of changes) */
- return(0);
- }
-
-diff -puN arch/um/include/user_util.h~Add_os_make_pty_raw arch/um/include/user_util.h
---- uml-linux-2.6.7/arch/um/include/user_util.h~Add_os_make_pty_raw 2004-06-29 21:03:03.159157104 +0200
-+++ uml-linux-2.6.7-paolo/arch/um/include/user_util.h 2004-06-29 21:03:03.162156648 +0200
-@@ -62,7 +62,6 @@ extern void set_cmdline(char *cmd);
- extern void input_cb(void (*proc)(void *), void *arg, int arg_len);
- extern int get_pty(void);
- extern void *um_kmalloc(int size);
--extern int raw(int fd, int complain);
- extern int switcheroo(int fd, int prot, void *from, void *to, int size);
- extern void setup_machinename(char *machine_out);
- extern void setup_hostinfo(void);
-@@ -90,6 +89,9 @@ extern void forward_pending_sigio(int ta
- extern int can_do_skas(void);
- extern void arch_init_thread(void);
-
-+extern int __raw(int fd, int complain, int now);
-+#define raw(fd, complain) __raw((fd), (complain), 1)
-+
- #endif
-
- /*
-_