lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 21 Nov 2019 15:23:57 +0100
From:   Arnd Bergmann <arnd@...db.de>
To:     Ben Hutchings <ben.hutchings@...ethink.co.uk>
Cc:     y2038 Mailman List <y2038@...ts.linaro.org>,
        Benjamin Herrenschmidt <benh@...nel.crashing.org>,
        Paul Mackerras <paulus@...ba.org>,
        Michael Ellerman <mpe@...erman.id.au>,
        Christophe Leroy <christophe.leroy@....fr>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        Nicholas Piggin <npiggin@...il.com>,
        Thomas Gleixner <tglx@...utronix.de>,
        linuxppc-dev <linuxppc-dev@...ts.ozlabs.org>,
        Allison Randal <allison@...utok.net>
Subject: Re: [Y2038] [PATCH 07/23] y2038: vdso: powerpc: avoid timespec references

On Wed, Nov 20, 2019 at 11:43 PM Ben Hutchings
<ben.hutchings@...ethink.co.uk> wrote:
>
> On Fri, 2019-11-08 at 22:07 +0100, Arnd Bergmann wrote:
> [...]
> > --- a/arch/powerpc/kernel/vdso32/gettimeofday.S
> > +++ b/arch/powerpc/kernel/vdso32/gettimeofday.S
> > @@ -15,10 +15,8 @@
> >  /* Offset for the low 32-bit part of a field of long type */
> >  #if defined(CONFIG_PPC64) && defined(CONFIG_CPU_BIG_ENDIAN)
> >  #define LOPART       4
> > -#define TSPEC_TV_SEC TSPC64_TV_SEC+LOPART
> >  #else
> >  #define LOPART       0
> > -#define TSPEC_TV_SEC TSPC32_TV_SEC
> >  #endif
> >
> >       .text
> > @@ -192,7 +190,7 @@ V_FUNCTION_BEGIN(__kernel_time)
> >       bl      __get_datapage@...al
> >       mr      r9, r3                  /* datapage ptr in r9 */
> >
> > -     lwz     r3,STAMP_XTIME+TSPEC_TV_SEC(r9)
> > +     lwz     r3,STAMP_XTIME_SEC+LOWPART(r9)
>
> "LOWPART" should be "LOPART".
>

Thanks, fixed both instances in a patch on top now. I considered folding
it into the original patch, but as it's close to the merge window I'd
rather not rebase it, and this way I also give you credit for finding the bug.

I'm surprised that the 0-day bot did not report this already.

Thanks fro the careful review!

        Arnd

commit 1c11ca7a0584ddede5b8c93057b40d31e8a96d3d (HEAD)
Author: Arnd Bergmann <arnd@...db.de>
Date:   Thu Nov 21 15:19:49 2019 +0100

    y2038: fix typo in powerpc vdso "LOPART"

    The earlier patch introduced a typo, change LOWPART back to
    LOPART.

    Fixes: 176ed98c8a76 ("y2038: vdso: powerpc: avoid timespec references")
    Reported-by: Ben Hutchings <ben.hutchings@...ethink.co.uk>
    Signed-off-by: Arnd Bergmann <arnd@...db.de>

diff --git a/arch/powerpc/kernel/vdso32/gettimeofday.S
b/arch/powerpc/kernel/vdso32/gettimeofday.S
index a7180b0f4aa1..c8e6902cb01b 100644
--- a/arch/powerpc/kernel/vdso32/gettimeofday.S
+++ b/arch/powerpc/kernel/vdso32/gettimeofday.S
@@ -190,7 +190,7 @@ V_FUNCTION_BEGIN(__kernel_time)
        bl      __get_datapage@...al
        mr      r9, r3                  /* datapage ptr in r9 */

-       lwz     r3,STAMP_XTIME_SEC+LOWPART(r9)
+       lwz     r3,STAMP_XTIME_SEC+LOPART(r9)

        cmplwi  r11,0                   /* check if t is NULL */
        beq     2f
@@ -266,7 +266,7 @@ __do_get_tspec:
         * as a 32.32 fixed-point number in r3 and r4.
         * Load & add the xtime stamp.
         */
-       lwz     r5,STAMP_XTIME_SEC+LOWPART(r9)
+       lwz     r5,STAMP_XTIME_SEC+LOPART(r9)

        lwz     r6,STAMP_SEC_FRAC(r9)
        addc    r4,r4,r6
        adde    r3,r3,r5

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ