diff options
author | Anton Ivanov <aivanov@kot-begemot.co.uk> | 2016-11-09 21:43:25 +0100 |
---|---|---|
committer | Richard Weinberger <richard@nod.at> | 2016-12-14 22:46:55 +0100 |
commit | f88f0bdfc32f3d1e2fd03ec8a7f7b456df4db725 (patch) | |
tree | 7eed7ad5a2f795f8b45187db4955eff9c5ef049a /arch/um/drivers/ubd.h | |
parent | Linux 4.9 (diff) | |
download | linux-f88f0bdfc32f3d1e2fd03ec8a7f7b456df4db725.tar.xz linux-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.h | 5 |
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 |