Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 11 Jun 2016 11:28:30 +0000 (UTC)
From:      Garrett Cooper <ngie@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org
Subject:   svn commit: r301833 - in stable/10/sys: sys vm
Message-ID:  <201606111128.u5BBSUeD005988@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ngie
Date: Sat Jun 11 11:28:29 2016
New Revision: 301833
URL: https://svnweb.freebsd.org/changeset/base/301833

Log:
  Redo MFC r300220,r300223:
  
  Differential Revision: https://reviews.freebsd.org/D6803
  Reviewed by: alc, kib
  Sponsored by: EMC / Isilon Storage Division
  
  r300220 (by cem):
  
  sys/vmmeter.h: Fix trivial '-Wsign-compare' warning in common header
  
  Frankly, it doesn't make sense for vm_pageout_wakeup_thresh to have a negative
  value (it is only ever set to a fraction of v_free_min, which is unsigned and
  also obviously non-negative). But I'm not going to try and convert every
  non-negative scalar in the VM to unsigned today, so just cast it for the
  comparison.
  
  r300223 (by cem):
  
  vm/vm_page.h: Fix trivial '-Wpointer-sign' warning
  
  pq_vcnt, as a count of real things, has no business being negative. It is only
  ever initialized by a u_int counter.
  
  The warning came from the atomic_add_int() in vm_pagequeue_cnt_add().
  
  Rectify the warning by changing the variable to u_int. No functional change.
  
  Suggested by: Clang 3.3

Modified:
  stable/10/sys/sys/vmmeter.h
  stable/10/sys/vm/vm_page.c
  stable/10/sys/vm/vm_page.h
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/sys/sys/vmmeter.h
==============================================================================
--- stable/10/sys/sys/vmmeter.h	Sat Jun 11 11:25:49 2016	(r301832)
+++ stable/10/sys/sys/vmmeter.h	Sat Jun 11 11:28:29 2016	(r301833)
@@ -183,7 +183,8 @@ static __inline 
 int
 vm_paging_needed(void)
 {
-    return (cnt.v_free_count + cnt.v_cache_count < vm_pageout_wakeup_thresh);
+    return (cnt.v_free_count + cnt.v_cache_count <
+        (u_int)vm_pageout_wakeup_thresh);
 }
 
 #endif

Modified: stable/10/sys/vm/vm_page.c
==============================================================================
--- stable/10/sys/vm/vm_page.c	Sat Jun 11 11:25:49 2016	(r301832)
+++ stable/10/sys/vm/vm_page.c	Sat Jun 11 11:28:29 2016	(r301833)
@@ -253,11 +253,11 @@ vm_page_domain_init(struct vm_domain *vm
 
 	*__DECONST(char **, &vmd->vmd_pagequeues[PQ_INACTIVE].pq_name) =
 	    "vm inactive pagequeue";
-	*__DECONST(int **, &vmd->vmd_pagequeues[PQ_INACTIVE].pq_vcnt) =
+	*__DECONST(u_int **, &vmd->vmd_pagequeues[PQ_INACTIVE].pq_vcnt) =
 	    &cnt.v_inactive_count;
 	*__DECONST(char **, &vmd->vmd_pagequeues[PQ_ACTIVE].pq_name) =
 	    "vm active pagequeue";
-	*__DECONST(int **, &vmd->vmd_pagequeues[PQ_ACTIVE].pq_vcnt) =
+	*__DECONST(u_int **, &vmd->vmd_pagequeues[PQ_ACTIVE].pq_vcnt) =
 	    &cnt.v_active_count;
 	vmd->vmd_page_count = 0;
 	vmd->vmd_free_count = 0;

Modified: stable/10/sys/vm/vm_page.h
==============================================================================
--- stable/10/sys/vm/vm_page.h	Sat Jun 11 11:25:49 2016	(r301832)
+++ stable/10/sys/vm/vm_page.h	Sat Jun 11 11:28:29 2016	(r301833)
@@ -215,7 +215,7 @@ struct vm_pagequeue {
 	struct mtx	pq_mutex;
 	struct pglist	pq_pl;
 	int		pq_cnt;
-	int		* const pq_vcnt;
+	u_int		* const pq_vcnt;
 	const char	* const pq_name;
 } __aligned(CACHE_LINE_SIZE);
 



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