[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] physmem: use sysinfo on linux for physmem_total

From: Natanael Copa
Subject: Re: [PATCH] physmem: use sysinfo on linux for physmem_total
Date: Fri, 18 Apr 2014 11:10:09 +0200

On Thu, 17 Apr 2014 01:26:13 +0100
Pádraig Brady <address@hidden> wrote:

> On 04/15/2014 03:49 PM, Pádraig Brady wrote:
> > On 04/15/2014 03:43 PM, Natanael Copa wrote:
> >> * lib/physmem.c (physmem_total): Some systems like musl libc does not
> >> (yet) support _SC_PHYS_PAGES. Use the linux syscall sysinfo first and
> >> fallback to sysconf with _SC_PHYS_PAGES and _SC_PAGESIZE.
> > 
> > This looks good.
> > I confirmed the values are the same on a
> > system at least.
> Actually sysinfo() returns dynamic stats too,
> and thus could have more overhead.
> Therefore I suggest we use sysinfo() as the fallback
> if _SC_PHYS_PAGES is not available.

The recent musl implementation of _SC_PHYS_PAGES will do a sysinfo call
so on musl 2 sysconf() calls will be microscopically slower. I doubt
that matter for any practical purpose anyways so no problem for me if
you prefer that.

> Also I see that one should multiply totalram * mem_unit
> (note cast to double first to avoid overflow).
> So handiest is to check for the mem_unit member to
> conditionalize the use of sysinfo().

Ah, yes. I'll send a new patch.

> thanks,
> Pádraig.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]