|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH 17/27 v8] xen/arm: vpl011: Add a new handle_console_tty function in xenconsole
This patch introduces a new handle_console_tty function. This function
performs read/write from/to console tty.
Signed-off-by: Bhupinder Thakur <bhupinder.thakur@xxxxxxxxxx>
Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>
Acked-by: Wei Liu <wei.liu2@xxxxxxxxxx>
---
CC: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
CC: Wei Liu <wei.liu2@xxxxxxxxxx>
CC: Stefano Stabellini <sstabellini@xxxxxxxxxx>
CC: Julien Grall <julien.grall@xxxxxxx>
Changes since v5:
- Split this change in a separate patch.
tools/console/daemon/io.c | 35 +++++++++++++++++++----------------
1 file changed, 19 insertions(+), 16 deletions(-)
diff --git a/tools/console/daemon/io.c b/tools/console/daemon/io.c
index c361b42..5c6da31 100644
--- a/tools/console/daemon/io.c
+++ b/tools/console/daemon/io.c
@@ -1130,6 +1130,24 @@ static void maybe_add_console_tty_fd(struct console *con)
}
}
+static void handle_console_tty(struct console *con)
+{
+ if (con->master_fd != -1 && con->master_pollfd_idx != -1) {
+ if (fds[con->master_pollfd_idx].revents &
+ ~(POLLIN|POLLOUT|POLLPRI))
+ console_handle_broken_tty(con,
domain_is_valid(con->d->domid));
+ else {
+ if (fds[con->master_pollfd_idx].revents &
+ POLLIN)
+ handle_tty_read(con);
+ if (fds[con->master_pollfd_idx].revents &
+ POLLOUT)
+ handle_tty_write(con);
+ }
+ }
+ con->master_pollfd_idx = -1;
+}
+
void handle_io(void)
{
int ret;
@@ -1260,22 +1278,7 @@ void handle_io(void)
handle_console_ring(con);
- if (con->master_fd != -1 && con->master_pollfd_idx !=
-1) {
- if (fds[con->master_pollfd_idx].revents &
- ~(POLLIN|POLLOUT|POLLPRI))
- console_handle_broken_tty(con,
- domain_is_valid(d->domid));
- else {
- if (fds[con->master_pollfd_idx].revents
&
- POLLIN)
- handle_tty_read(con);
- if (fds[con->master_pollfd_idx].revents
&
- POLLOUT)
- handle_tty_write(con);
- }
- }
-
- con->master_pollfd_idx = -1;
+ handle_console_tty(con);
if (d->last_seen != enum_pass)
shutdown_domain(d);
--
2.7.4
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |