Re: [RFC][PATCH] kernel: Replace timeconst.pl with a bc script

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

 



Dne 15.2.2013 00:13, H. Peter Anvin napsal(a):
> Unfortunately switching to Perl required a really ugly "canning"
> mechanism to support Perl < 5.8 installations lacking the Math::BigInt
> module.

Yes, this was really ugly.


> It was recently pointed out to me that some very old versions of GNU
> make had problems with pipes in subshells, which was indeed the
> construct used in the Makefile rules in that version of the patch;
> Perl didn't need it so switching to Perl fixed the problem for
> unrelated reasons.  With the problem (hopefully) root-caused, we can
> switch back to bc and do the arbitrary-precision arithmetic naturally.

Great.

> 
> Signed-off-by: H. Peter Anvin <hpa@xxxxxxxxx>
> Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> Cc: Michal Marek <mmarek@xxxxxxx>
> Cc: Sam Ravnborg <sam@xxxxxxxxxxxx>
> ---
>  kernel/Makefile     |  16 ++-
>  kernel/timeconst.bc | 108 +++++++++++++++
>  kernel/timeconst.pl | 376 ----------------------------------------------------
>  3 files changed, 120 insertions(+), 380 deletions(-)
>  create mode 100644 kernel/timeconst.bc
>  delete mode 100644 kernel/timeconst.pl
> 
> Comments appreciated; including the preferred way to merge this.

I can merge it into the kbuild tree if wanted. I only have one nipick:

> +/* Division by reciprocal multiplication. */
> +define fmul(b,n,d) {
> +       return (2^b*n+d-1)/d;
> +}

For readability reasons, I suggest to use the same formatting of
expressions and argument lists like in C:

define fmul(b, n, d) {
       return (2^b * n + d - 1) / d;
}

Otherwise, you can add

Acked-by: Michal Marek <mmarek@xxxxxxx>

Michal
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux&nblp;USB Development]     [Linux Media]     [Video for Linux]     [Linux Audio Users]     [Yosemite Secrets]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux