aboutsummaryrefslogtreecommitdiffstats
path: root/arch/um/drivers/ubd.h
diff options
context:
space:
mode:
authorAnton Ivanov <aivanov@kot-begemot.co.uk>2016-11-09 20:43:25 +0000
committerRichard Weinberger <richard@nod.at>2016-12-14 22:46:55 +0100
commitf88f0bdfc32f3d1e2fd03ec8a7f7b456df4db725 (patch)
tree7eed7ad5a2f795f8b45187db4955eff9c5ef049a /arch/um/drivers/ubd.h
parentLinux 4.9 (diff)
downloadlinux-dev-f88f0bdfc32f3d1e2fd03ec8a7f7b456df4db725.tar.xz
linux-dev-f88f0bdfc32f3d1e2fd03ec8a7f7b456df4db725.zip
um: UBD Improvements
UBD at present is extremely slow because it handles only one request at a time in the IO thread and IRQ handler. The single request at a time is replaced by handling multiple requests as well as necessary workarounds for short reads/writes. Resulting performance improvement in disk IO - 30% Signed-off-by: Anton Ivanov <aivanov@kot-begemot.co.uk> Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'arch/um/drivers/ubd.h')
-rw-r--r--arch/um/drivers/ubd.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/um/drivers/ubd.h b/arch/um/drivers/ubd.h
index 3b48cd2081ee..cc1cc85f5afc 100644
--- a/arch/um/drivers/ubd.h
+++ b/arch/um/drivers/ubd.h
@@ -11,5 +11,10 @@ extern int start_io_thread(unsigned long sp, int *fds_out);
extern int io_thread(void *arg);
extern int kernel_fd;
+extern int ubd_read_poll(int timeout);
+extern int ubd_write_poll(int timeout);
+
+#define UBD_REQ_BUFFER_SIZE 64
+
#endif