From owner-freebsd-arch@FreeBSD.ORG Wed Nov 1 19:46:47 2006 Return-Path: X-Original-To: freebsd-arch@freebsd.org Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id C728416A415 for ; Wed, 1 Nov 2006 19:46:47 +0000 (UTC) (envelope-from pjd@garage.freebsd.pl) Received: from mail.garage.freebsd.pl (arm132.internetdsl.tpnet.pl [83.17.198.132]) by mx1.FreeBSD.org (Postfix) with ESMTP id E9FAB43D5C for ; Wed, 1 Nov 2006 19:46:32 +0000 (GMT) (envelope-from pjd@garage.freebsd.pl) Received: by mail.garage.freebsd.pl (Postfix, from userid 65534) id 37F1D45CDA; Wed, 1 Nov 2006 20:46:30 +0100 (CET) Received: from localhost (dkh63.neoplus.adsl.tpnet.pl [83.24.11.63]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.garage.freebsd.pl (Postfix) with ESMTP id A40DC487F0; Wed, 1 Nov 2006 20:46:21 +0100 (CET) Date: Wed, 1 Nov 2006 20:46:18 +0100 From: Pawel Jakub Dawidek To: Brooks Davis Message-ID: <20061101194618.GT15861@garage.freebsd.pl> References: <20061101190606.GQ15861@garage.freebsd.pl> <20061101192457.GA56970@lor.one-eyed-alien.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Ma2pZxZcUUd0eybH" Content-Disposition: inline In-Reply-To: <20061101192457.GA56970@lor.one-eyed-alien.net> X-PGP-Key-URL: http://people.freebsd.org/~pjd/pjd.asc X-OS: FreeBSD 7.0-CURRENT i386 User-Agent: mutt-ng/devel-r804 (FreeBSD) X-Spam-Checker-Version: SpamAssassin 3.0.4 (2005-06-05) on mail.garage.freebsd.pl X-Spam-Level: X-Spam-Status: No, score=-0.5 required=3.0 tests=BAYES_00,RCVD_IN_NJABL_DUL, RCVD_IN_SORBS_DUL autolearn=no version=3.0.4 Cc: freebsd-arch@freebsd.org Subject: Re: sysconf(3) extensions. X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 01 Nov 2006 19:46:47 -0000 --Ma2pZxZcUUd0eybH Content-Type: text/plain; charset=iso-8859-2 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Wed, Nov 01, 2006 at 01:24:57PM -0600, Brooks Davis wrote: > On Wed, Nov 01, 2006 at 08:06:06PM +0100, Pawel Jakub Dawidek wrote: > > Hi. > >=20 > > I'd like to add two non-standard value to the sysconf(3) functions, > > which can be found in both Solaris and Linux: _SC_PHYS_PAGES and > > _SC_AVPHYS_PAGES. > >=20 > > The patch is here: > >=20 > > http://people.freebsd.org/~pjd/patches/sysconf.patch > >=20 > > Can someone review it? Thanks. >=20 > What are they for? My concern is that _SC_AVPHYS_PAGES isn't going to > semantically match other platforms since in a steady state the free count > is small on FreeBSD, but on other systems it swings quite a bit based on > load. _SC_PHYS_PAGES is used by libzpool (a part of the ZFS file system). _SC_AVPHYS_PAGES I used more for completness. > +Note that it is possible for the product of this value and the value of > +.Li _SC_PAGE_SIZE > +to overflow. >=20 > This would be more clear if it said what was expected to overflow and > when. The sysconf(3) functions return 'long' and on 32bit machine long is also 32bit. If we have more than 4GB of memory (PAE) and want to calculate physical memory in bytes doing _SC_PHYS_PAGES * _SC_PAGE_SIZE will overflow. But I'm not sure if I want to put this into manual page... Maybe as an example if there are or may be in the future other cases when this is possible? --=20 Pawel Jakub Dawidek http://www.wheel.pl pjd@FreeBSD.org http://www.FreeBSD.org FreeBSD committer Am I Evil? Yes, I Am! --Ma2pZxZcUUd0eybH Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.4 (FreeBSD) iD8DBQFFSPmKForvXbEpPzQRAtXaAJ46QiEx9yofNBNcH7lvdBpCkDFBFwCfWeqY G3tpwTPUEpg9oOiEt6ycHog= =kE7o -----END PGP SIGNATURE----- --Ma2pZxZcUUd0eybH--