lkml.org 
[lkml]   [2006]   [Mar]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH][RFC] splice support
    On Thu, Mar 30 2006, KAMEZAWA Hiroyuki wrote:
    > On Wed, 29 Mar 2006 14:28:41 +0200
    > Jens Axboe <axboe@suse.de> wrote:
    > >
    > > + /*
    > > + * Get as many pages from the page cache as possible..
    > > + * Start IO on the page cache entries we create (we
    > > + * can assume that any pre-existing ones we find have
    > > + * already had IO started on them).
    > > + */
    > > + i = find_get_pages(mapping, index, pages, array);
    > > +
    >
    > It looks page caches in this array is hold by pipe until data is consumed.
    > So..this page cannot be reclaimd or migrated and hot-removed :).

    Right

    > I don't know about sendfile() but this looks client can hold server's
    > memory, when server uses sendfile() 64k/conn.

    You mean when the server uses splice, 64kb (well 16 pages actually) /
    connection? That's a correct observation, I wouldn't think that pinning
    that small a number of pages is likely to cause any issues. At least I
    can think of much worse pinning by just doing IO :-)

    > Is there a way to force these pages to be freed ? or page reclaimer
    > can know this page is held by splice ? (we need additional PG_flags to
    > do this ?)
    >
    > I think these pages are necessary to be held only when data in them is
    > used.

    Not without tearing down the pipe.

    --
    Jens Axboe

    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-03-30 15:56    [W:0.022 / U:59.944 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site