Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 23 Apr 2017 16:10:56 +0300
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Jilles Tjoelker <jilles@stack.nl>
Cc:        Ngie Cooper <ngie@FreeBSD.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r317315 - head/lib/libc/gen
Message-ID:  <20170423131056.GA1622@kib.kiev.ua>
In-Reply-To: <20170423130736.GA53007@stack.nl>
References:  <201704230317.v3N3HWtd040005@repo.freebsd.org> <20170423095345.GC57674@kib.kiev.ua> <20170423130736.GA53007@stack.nl>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Apr 23, 2017 at 03:07:36PM +0200, Jilles Tjoelker wrote:
> On Sun, Apr 23, 2017 at 12:53:45PM +0300, Konstantin Belousov wrote:
> > On Sun, Apr 23, 2017 at 03:17:32AM +0000, Ngie Cooper wrote:
> > > Author: ngie
> > > Date: Sun Apr 23 03:17:32 2017
> > > New Revision: 317315
> > > URL: https://svnweb.freebsd.org/changeset/base/317315
> 
> > > Log:
> > >   Note that getpagesize(3) can return -1 on failure
> 
> > getpagesize() cannot fail.  This change only confuses the readers.
> 
> Although I agree that getpagesize() cannot fail and that it is
> inappropriate to check for it, the code in lib/libc/gen/getpagesize.c
> has a path where it returns -1 (if sysctl CTL_HW HW_PAGESIZE fails). It
> probably makes more sense to abort() here to avoid confusing both humans
> and static analyzers, and allow easier debugging if a bug causes it to
> fail (instead of calculating bogus sizes from the -1 return value).

If the sysctl() call fails there, I think it does not make any sense to
bother with abort(), since we do not run on a FreeBSD(-like) kernel.
Might be, it would be cleaner to change return (-1) to return (PAGE_SIZE)
in the 'error case'.



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