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);
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "[email protected]"

Reply via email to