From owner-svn-src-head@FreeBSD.ORG Mon Dec 17 09:36:44 2012 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 078216C9; Mon, 17 Dec 2012 09:36:44 +0000 (UTC) (envelope-from gabor@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) by mx1.freebsd.org (Postfix) with ESMTP id C4F118FC12; Mon, 17 Dec 2012 09:36:43 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.5/8.14.5) with ESMTP id qBH9ahI7059359; Mon, 17 Dec 2012 09:36:43 GMT (envelope-from gabor@svn.freebsd.org) Received: (from gabor@localhost) by svn.freebsd.org (8.14.5/8.14.5/Submit) id qBH9ah0V059357; Mon, 17 Dec 2012 09:36:43 GMT (envelope-from gabor@svn.freebsd.org) Message-Id: <201212170936.qBH9ah0V059357@svn.freebsd.org> From: Gabor Kovesdan Date: Mon, 17 Dec 2012 09:36:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r244346 - head/usr.bin/sort X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 17 Dec 2012 09:36:44 -0000 Author: gabor Date: Mon Dec 17 09:36:43 2012 New Revision: 244346 URL: http://svnweb.freebsd.org/changeset/base/244346 Log: - Use unsigned int for values obtained with sysctlbyname(). This fixes sparc64 performance problems. Submitted by: Oleg Moskalenko Tested by: trasz Modified: head/usr.bin/sort/sort.c head/usr.bin/sort/sort.h Modified: head/usr.bin/sort/sort.c ============================================================================== --- head/usr.bin/sort/sort.c Mon Dec 17 06:44:16 2012 (r244345) +++ head/usr.bin/sort/sort.c Mon Dec 17 09:36:43 2012 (r244346) @@ -103,7 +103,7 @@ bool debug_sort; bool need_hint; #if defined(SORT_THREADS) -size_t ncpu = 1; +unsigned int ncpu = 1; size_t nthreads = 1; #endif @@ -268,14 +268,16 @@ set_hw_params(void) #if defined(SORT_THREADS) size_t ncpusz; #endif - size_t pages, psize, psz, pszsz; + unsigned int pages, psize; + size_t psz, pszsz; pages = psize = 0; #if defined(SORT_THREADS) ncpu = 1; ncpusz = sizeof(size_t); #endif - psz = pszsz = sizeof(size_t); + psz = sizeof(pages); + pszsz = sizeof(psize); if (sysctlbyname("vm.stats.vm.v_free_count", &pages, &psz, NULL, 0) < 0) { @@ -299,6 +301,9 @@ set_hw_params(void) free_memory = (unsigned long long) pages * (unsigned long long) psize; available_free_memory = (free_memory * 9) / 10; + + if (available_free_memory < 1024) + available_free_memory = 1024; } /* Modified: head/usr.bin/sort/sort.h ============================================================================== --- head/usr.bin/sort/sort.h Mon Dec 17 06:44:16 2012 (r244345) +++ head/usr.bin/sort/sort.h Mon Dec 17 09:36:43 2012 (r244346) @@ -54,7 +54,7 @@ extern const char *nlsstr[]; #if defined(SORT_THREADS) #define MT_SORT_THRESHOLD (10000) -extern size_t ncpu; +extern unsigned int ncpu; extern size_t nthreads; #endif