[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH 12/27 v10] xen/arm: vpl011: Add a new buffer_available function in xenconsole



This patch introduces a new buffer_available function to check if
more data is allowed to be buffered.

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 | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/tools/console/daemon/io.c b/tools/console/daemon/io.c
index 1da08d7..0009bbe 100644
--- a/tools/console/daemon/io.c
+++ b/tools/console/daemon/io.c
@@ -163,6 +163,16 @@ static int write_with_timestamp(int fd, const char *data, 
size_t sz,
        return 0;
 }
 
+static inline bool buffer_available(struct console *con)
+{
+       if (discard_overflowed_data ||
+           !con->buffer.max_capacity ||
+           con->buffer.size < con->buffer.max_capacity)
+               return true;
+       else
+               return false;
+}
+
 static void buffer_append(struct console *con)
 {
        struct buffer *buffer = &con->buffer;
@@ -1120,9 +1130,7 @@ void handle_io(void)
                                    con->next_period < next_timeout)
                                        next_timeout = con->next_period;
                        } else if (con->xce_handle != NULL) {
-                               if (discard_overflowed_data ||
-                                   !con->buffer.max_capacity ||
-                                   con->buffer.size < 
con->buffer.max_capacity) {
+                               if (buffer_available(con)) {
                                        int evtchn_fd = 
xenevtchn_fd(con->xce_handle);
                                        con->xce_pollfd_idx = set_fds(evtchn_fd,
                                                                    
POLLIN|POLLPRI);
-- 
2.7.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.