|
|
Message-ID: <20140411013911.GQ26358@brightrain.aerifal.cx>
Date: Thu, 10 Apr 2014 21:39:11 -0400
From: Rich Felker <dalias@...ifal.cx>
To: musl@...ts.openwall.com
Subject: Re: Preparing for releases 1.1.0 and 1.0.1
On Thu, Apr 10, 2014 at 03:11:23PM +0200, Szabolcs Nagy wrote:
> * x32 timex is broken (should use long long on x32)
>
> diff --git a/include/sys/timex.h b/include/sys/timex.h
> index 2e68888..e404e8b 100644
> --- a/include/sys/timex.h
> +++ b/include/sys/timex.h
> @@ -17,6 +17,9 @@ struct ntptimeval {
> };
>
> struct timex {
> +// TODO: x32
> +// 7fb30128527a4220f181c2867edd9ac178175a87 2013-12-27
> +// x32 adjtimex system call is the same as x86-64 adjtimex system call,
> unsigned modes;
> long offset, freq, maxerror, esterror;
> int status;
Uhg, so do we need to move this to bits or do some ugly hack? Or
rewrite it in the syscall wrapper code like for timespec?
> * math alias issues on non-x86 archs (about +80bytes)
> (either this or __may_alias__)
I prefer the +80 bytes; the other may_alias uses are optional and have
a portable fallback.
> * use 1/eps for rounding check (with *4 it's nicer, ymmv)
Could you explain why? I would prefer a change that doesn't require so
many lines changed since they're all places errors could hide. Just
getting rid of the CONCAT hack seems preferable to me, but I don't
mind hearing the reason you like the *4.
> * only use nanosec for entropy
I just worry on some archs with bad timer, this could prevent getting
sufficiently many temp names (of course the problem already existed).
Is there more non-valuable entropy we could merge into it? One idea
was the bytes of struct stat from stat() on /proc/self (this is like
using pid, but better). But perhaps there's more we could do with just
time.
> * broken legacy header..
>
> diff --git a/include/sys/procfs.h b/include/sys/procfs.h
> index f7936c4..a1fcabf 100644
> --- a/include/sys/procfs.h
> +++ b/include/sys/procfs.h
> @@ -40,7 +40,7 @@ struct elf_prpsinfo
> char pr_zomb;
> char pr_nice;
> unsigned long int pr_flag;
> -#if UINTPTR_MAX == 0xffffffff
> +#if UINTPTR_MAX == 0xffffffff && !defined __powerpc__
I'm ok with this hack I think.
> unsigned short int pr_uid;
> unsigned short int pr_gid;
> #else
>
> * linux 3.14 stuff
> (sched_setattr/sched_getattr syscall numbers, new sockopt flag, new arphdr type)
This should probably be held until a later release. We need to
consider ABI issues. I believe we have sufficient room to put a union
(rather than the kernel's silly non-union approach) over top of our
schedparam struct and fit all the values needed without ABI breakage,
but this requires some code to convert to/from the kernel format.
> * makefile/config changes for out-of-tree build
Last I checked you were still finding breakage in it. When I get done
with the release and other higher-priority things I'm trying to get
done, maybe I should look at it and give it a proper review. Sorry I
haven't gotten around to that yet.
Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.