Le 04/04/2019 à 02:58, Christian Zigotzky a écrit :
On 03 April 2019 at 07:05AM, Christophe Leroy wrote:
Le 03/04/2019 à 05:52, Christian Zigotzky a écrit :
Please test VLC with the RC3 of kernel 5.1.

The removing of the PowerPC fixes 5.1-3 has solved the VLC issue. Another user has already confirmed that [1]. This isn’t an April Fool‘s. ;-)

Could you bisect to identify the guilty commit ?

Thanks
Christophe


Thanks

[1] http://forum.hyperion-entertainment.com/viewtopic.php?f=58&t=4256&start=20#p47561


Hello Christophe,

I have found the problematic patch. The following patch from the PowerPC fixes 5.1-3 is responsible for the VLC issue.

That change is part of the following commit:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v5.1-rc2&id=b5b4453e7912f056da1ca7572574cada32ecb60c

Just changing back the type of wtom_clock_sec to 32 bits without changing back the loading instruction is likely to give unexpected results on PPC64.

Are you using 32 bits or 64 bits powerpc ?

Christophe


diff --git a/arch/powerpc/include/asm/vdso_datapage.h b/arch/powerpc/include/asm/vdso_datapage.h
index 1afe90ade595..bbc06bd72b1f 100644
--- a/arch/powerpc/include/asm/vdso_datapage.h
+++ b/arch/powerpc/include/asm/vdso_datapage.h
@@ -82,10 +82,10 @@ struct vdso_data {
     __u32 icache_block_size;      /* L1 i-cache block size     */
     __u32 dcache_log_block_size;      /* L1 d-cache log block size */
     __u32 icache_log_block_size;      /* L1 i-cache log block size */
-   __s32 wtom_clock_sec;         /* Wall to monotonic clock */
-   __s32 wtom_clock_nsec;
-   struct timespec stamp_xtime;   /* xtime as at tb_orig_stamp */
-   __u32 stamp_sec_fraction;   /* fractional seconds of stamp_xtime */
+   __u32 stamp_sec_fraction;      /* fractional seconds of stamp_xtime */
+   __s32 wtom_clock_nsec;         /* Wall to monotonic clock nsec */
+   __s64 wtom_clock_sec;         /* Wall to monotonic clock sec */
+   struct timespec stamp_xtime;      /* xtime as at tb_orig_stamp */
        __u32 syscall_map_64[SYSCALL_MAP_SIZE]; /* map of syscalls */
        __u32 syscall_map_32[SYSCALL_MAP_SIZE]; /* map of syscalls */
  };

-----

Link: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/diff/arch/powerpc/include/asm/vdso_datapage.h?h=v5.1-rc2&id=a5ed1e96cafde5ba48638f486bfca0685dc6ddc9

I created a patch for solving the VLC issue today.

vdso_datapage_vlc.patch:

diff -rupN a/arch/powerpc/include/asm/vdso_datapage.h b/arch/powerpc/include/asm/vdso_datapage.h --- a/arch/powerpc/include/asm/vdso_datapage.h  2019-04-03 22:56:44.560645936 +0200 +++ b/arch/powerpc/include/asm/vdso_datapage.h  2019-04-04 02:20:09.479361827 +0200
@@ -82,10 +82,10 @@ struct vdso_data {
        __u32 icache_block_size;                /* L1 i-cache block size     */         __u32 dcache_log_block_size;            /* L1 d-cache log block size */         __u32 icache_log_block_size;            /* L1 i-cache log block size */ -       __u32 stamp_sec_fraction;               /* fractional seconds of stamp_xtime */ -       __s32 wtom_clock_nsec;                  /* Wall to monotonic clock nsec */ -       __s64 wtom_clock_sec;                   /* Wall to monotonic clock sec */ -       struct timespec stamp_xtime;            /* xtime as at tb_orig_stamp */ +       __s32 wtom_clock_sec;                   /* Wall to monotonic clock */
+       __s32 wtom_clock_nsec;
+       struct timespec stamp_xtime;    /* xtime as at tb_orig_stamp */
+       __u32 stamp_sec_fraction;       /* fractional seconds of stamp_xtime */
         __u32 syscall_map_64[SYSCALL_MAP_SIZE]; /* map of syscalls */
         __u32 syscall_map_32[SYSCALL_MAP_SIZE]; /* map of syscalls */
  };

-----

Cheers,
Christian

Reply via email to