From 3d5a5078ca0ce1d3c122e5983544359065bd313a Mon Sep 17 00:00:00 2001 From: Bart Van Assche Date: Sun, 6 Oct 2019 00:01:20 +0000 Subject: [PATCH] contributing.html: Remove information about already implemented features git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@8602 d57e44dd-8a1f-0410-8b47-8ef2f437770f --- www/contributing.html | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/www/contributing.html b/www/contributing.html index 8762cb70e..f609d1088 100644 --- a/www/contributing.html +++ b/www/contributing.html @@ -49,32 +49,6 @@

Possible SCST extensions and improvements

-

Asynchronous FILEIO in scst_vdisk handler

- -

At the moment scst_vdisk handler for FILEIO uses regular synchronous read/write() calls - and makes deep queue depth by using multiple threads. This is not too high performance - model of operations. It would be much better to use asynchronous I/O with not blocking - I/O calls.

- -

In the user space native AIO is available for many years, but only very recently ability to - use it was added in the kernel. Changing FILEIO to use the new interface should significantly - (up to multiple times) increase performance of FILEIO devices.

- -

Support for O_DIRECT in scst_vdisk handler

- -

At the moment, scst_vdisk handler doesn't support O_DIRECT option and possibility to set it - was disabled. This limitation caused by Linux kernel expectation that memory supplied to - read() and write() functions with O_DIRECT flag is mapped to some user space application. - Having O_DIRECT together with above asynchronous FILEIO would be another significant - performance boost for modern solid state devices. For instance, in fio utility - direct AIO long ago proven to be the fastest way to benchmark storage.

- -

It is relatively easy to remove that limitation. Function dio_refill_pages() - should be modified to check before calling get_user_pages() if current->mm is not NULL. - If it is NULL, then, instead of calling get_user_pages(), dio->pages should be filled - by pages, taken directly from dio->curr_user_address. Each such page should be referenced - by page_cache_get(). That's all.

-

Solve SG IO count limitation issue in pass-through mode

In the pass-through mode (i.e. using the pass-through device handlers like