Messages in this thread | | | Date | Mon, 30 Mar 2015 13:37:58 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH v7 0/5] vfs: Non-blockling buffered fs read (page cache only) |
| |
On Mon, 30 Mar 2015 13:32:27 -0700 Jeremy Allison <jra@samba.org> wrote:
> On Mon, Mar 30, 2015 at 01:26:25PM -0700, Andrew Morton wrote: > > > > cons: > > > > d) fincore() is more expensive > > > > e) fincore() will very occasionally block > > The above is the killer for Samba. If fincore > returns true but when we schedule the pread > we block, we're hosed. > > Once we block, we're done serving clients on the main > thread until this returns. That can cause unpredictable > response times which can cause client timeouts. > > A fincore+pread solution that blocks is simply unsafe > to use for us. We'll have to stay with the threadpool :-(.
Finally. Thanks ;)
This implies that the samba main thread also has to avoid any memory allocations both direct and within syscall and pagefault - those will occasionally exhibit similar worse-case latency. Is this done now?
| |