FUJITA Tomonori wrote:
From: Vladislav Bolkhovitin <vst@xxxxxxxx>
Subject: Re: Ang: Re: [Stgt-devel] Re: [Iscsitarget-devel] stgt a new version of iscsi target?
Date: Sat, 10 Dec 2005 18:32:46 +0300
Also is the page cache comment in reference to us using the page cache
for our reads and writes or I am not sure why you wrote that if you do
not do it right now.
Hm, at first, the page cache already used somehow in fileio dev handler
(though, with additional mem copy). At the second, fully utilize the
page cache is one of two major improvements that are pending in scst,
because it is required changing the kernel, which until some moment try
to avoid. Although I prepared what is necessary for that.
The idea basically is the following. When READ operation arrives, pages
for all requested blocks are at first searched in the page cache
(probably, in SIRQ context, because it isn't expensive operation) and if
all pages are found, they are referenced and the result will be sent to
the initiator. Then the pages will be dereferenced (so, no pages
allocation will be done at all). Otherwise, the missed pages will be
allocated and the command will be rescheduled to the thread, which will
read them. Then, after the response is sent, the pages will remain in
the page cache for future accesses. For WRITEs the processing is the
similar, the pages with the data will be put in the page cache.
The Ardis iSCSI target code does the same thing.
Perfectly. So, why don't do it on the mid-layer level where all targets
can benefit from it?
Because I think that it not of much performance benefit.
Are you sure? Why do you think using the cache together with its nice
features like read-ahead doesn't bring major performance benefits?
Vlad
-
: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html