Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 Apr 2014 13:03:58 +0000 (UTC)
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r264228 - projects/sendfile/sys/kern
Message-ID:  <201404071303.s37D3w34044453@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: glebius
Date: Mon Apr  7 13:03:58 2014
New Revision: 264228
URL: http://svnweb.freebsd.org/changeset/base/264228

Log:
  Do not assert that pages grabbed for readahead, are still there.
  A race is possible when at this point read has already completed,
  and since we do not hold wiring on the page, VM is able to remove
  it from object.
  
  Sponsored by:	Nginx, Inc.
  Sponsored by:	Netflix

Modified:
  projects/sendfile/sys/kern/uipc_syscalls.c

Modified: projects/sendfile/sys/kern/uipc_syscalls.c
==============================================================================
--- projects/sendfile/sys/kern/uipc_syscalls.c	Mon Apr  7 13:02:05 2014	(r264227)
+++ projects/sendfile/sys/kern/uipc_syscalls.c	Mon Apr  7 13:03:58 2014	(r264228)
@@ -2796,7 +2796,7 @@ sendfile_swapin(vm_object_t obj, struct 
 		SFSTAT_INC(sf_iocnt);
 		nios++;
 
-		for (j = i; j < i + count; j++)
+		for (j = i; j < i + count && j < npages; j++)
 			KASSERT(pa[j] == vm_page_lookup(obj,
 			    OFF_TO_IDX(vmoff(j, off))),
 			    ("pa[j] %p lookup %p\n", pa[j],



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201404071303.s37D3w34044453>