Author: glebius
Date: Wed Nov 19 15:17:19 2014
New Revision: 274715
URL: https://svnweb.freebsd.org/changeset/base/274715

Log:
  In vnode_pager_generic_getpages() vp->v_mount is dereferenced in the
  beginning, thus can't be NULL.
  
  Sponsored by: Nginx, Inc.

Modified:
  head/sys/vm/vnode_pager.c

Modified: head/sys/vm/vnode_pager.c
==============================================================================
--- head/sys/vm/vnode_pager.c   Wed Nov 19 14:49:29 2014        (r274714)
+++ head/sys/vm/vnode_pager.c   Wed Nov 19 15:17:19 2014        (r274715)
@@ -714,7 +714,6 @@ vnode_pager_generic_getpages(struct vnod
        int runpg;
        int runend;
        struct buf *bp;
-       struct mount *mp;
        int count;
        int error;
 
@@ -906,8 +905,7 @@ vnode_pager_generic_getpages(struct vnod
         * and map the pages to be read into the kva, if the filesystem
         * requires mapped buffers.
         */
-       mp = vp->v_mount;
-       if (mp != NULL && (mp->mnt_kern_flag & MNTK_UNMAPPED_BUFS) != 0 &&
+       if ((vp->v_mount->mnt_kern_flag & MNTK_UNMAPPED_BUFS) != 0 &&
            unmapped_buf_allowed) {
                bp->b_data = unmapped_buf;
                bp->b_kvabase = unmapped_buf;
@@ -955,7 +953,7 @@ vnode_pager_generic_getpages(struct vnod
        }
        if ((bp->b_flags & B_UNMAPPED) == 0)
                pmap_qremove(kva, count);
-       if (mp != NULL && (mp->mnt_kern_flag & MNTK_UNMAPPED_BUFS) != 0) {
+       if ((vp->v_mount->mnt_kern_flag & MNTK_UNMAPPED_BUFS) != 0) {
                bp->b_data = (caddr_t)kva;
                bp->b_kvabase = (caddr_t)kva;
                bp->b_flags &= ~B_UNMAPPED;
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to