Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Mar 2016 19:04:02 +0000 (UTC)
From:      "Pedro F. Giffuni" <pfg@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r297037 - head/sys/kern
Message-ID:  <201603181904.u2IJ42in051041@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: pfg
Date: Fri Mar 18 19:04:01 2016
New Revision: 297037
URL: https://svnweb.freebsd.org/changeset/base/297037

Log:
  aio_qphysio(): Avoid uninitialized pointer read on error.
  
  For the !unmap case it may happen that pbuf gets called unreferenced
  when vm_fault_quick_hold_pages() fails.
  Initialize it so it doesn't cause trouble.
  
  CID:		1352776
  Reviewed by:	jhb
  MFC after:	1 week

Modified:
  head/sys/kern/vfs_aio.c

Modified: head/sys/kern/vfs_aio.c
==============================================================================
--- head/sys/kern/vfs_aio.c	Fri Mar 18 18:26:07 2016	(r297036)
+++ head/sys/kern/vfs_aio.c	Fri Mar 18 19:04:01 2016	(r297037)
@@ -1226,7 +1226,8 @@ aio_qphysio(struct proc *p, struct kaioc
 	if (!unmap) {
 		job->pbuf = pbuf = (struct buf *)getpbuf(NULL);
 		BUF_KERNPROC(pbuf);
-	}
+	} else
+		pbuf = NULL;
 
 	AIO_LOCK(ki);
 	if (!unmap)



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