Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 5 Sep 2017 13:55:14 +0000 (UTC)
From:      Mark Johnston <markj@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r323182 - stable/11/sys/dev/md
Message-ID:  <201709051355.v85DtELr083563@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: markj
Date: Tue Sep  5 13:55:14 2017
New Revision: 323182
URL: https://svnweb.freebsd.org/changeset/base/323182

Log:
  MFC r319933:
  Free the request page if an I/O error occurs while reading from swap.

Modified:
  stable/11/sys/dev/md/md.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/md/md.c
==============================================================================
--- stable/11/sys/dev/md/md.c	Tue Sep  5 13:54:27 2017	(r323181)
+++ stable/11/sys/dev/md/md.c	Tue Sep  5 13:55:14 2017	(r323182)
@@ -1027,7 +1027,7 @@ mdstart_swap(struct md_s *sc, struct bio *bp)
 				rv = vm_pager_get_pages(sc->object, &m, 1,
 				    NULL, NULL);
 			if (rv == VM_PAGER_ERROR) {
-				vm_page_xunbusy(m);
+				md_swap_page_free(m);
 				break;
 			} else if (rv == VM_PAGER_FAIL) {
 				/*
@@ -1057,7 +1057,7 @@ mdstart_swap(struct md_s *sc, struct bio *bp)
 				rv = vm_pager_get_pages(sc->object, &m, 1,
 				    NULL, NULL);
 			if (rv == VM_PAGER_ERROR) {
-				vm_page_xunbusy(m);
+				md_swap_page_free(m);
 				break;
 			} else if (rv == VM_PAGER_FAIL)
 				pmap_zero_page(m);
@@ -1084,7 +1084,7 @@ mdstart_swap(struct md_s *sc, struct bio *bp)
 				rv = vm_pager_get_pages(sc->object, &m, 1,
 				    NULL, NULL);
 			if (rv == VM_PAGER_ERROR) {
-				vm_page_xunbusy(m);
+				md_swap_page_free(m);
 				break;
 			} else if (rv == VM_PAGER_FAIL) {
 				md_swap_page_free(m);



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