Kernel 5.1

AmigaOne X5000 platform specific issues related to Linux only.
User avatar
Skateman
Posts: 861
Joined: Thu Aug 10, 2017 8:36 pm
Location: The Netherlands

Re: Kernel 5.1

Post by Skateman »

RC3-2 fixed the video problem. Both SMtube and VLC play correctly on my AmigaOne X5000!

Image

Big Picture http://www.skateman.nl/wp-content/uploa ... 165855.png
AmigaOne X5000 -> 2GHz / 16GB RAM / Radeon RX 570 / Radeon X1950 / M-Audio 5.1 -> AmigaOS / Linux
Amiga 1200 -> Recapped / 68ec020 ACA 1221ec / CF HDD / RetroNET connected to the world
Vampire 4SA - RPi4 Running AmiKitXE Full
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 5.1

Post by xeno74 »

Hi Skateman,

Many thanks for testing the RC3 and the RC3-2! :-)

Cheers,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 5.1

Post by xeno74 »

Hi All,

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

Code: Select all

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: arch/powerpc/include/asm/vdso_datapage.h

Cheers,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 5.1

Post by xeno74 »

I created a patch for solving the VLC issue today.

vdso_datapage_vlc.patch:

Code: Select all

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 */
 };
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 5.1

Post by xeno74 »

FYI:
Christophe wrote: That change is part of the following commit:

https://git.kernel.org/pub/scm/linux/ke ... da32ecb60c

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 ?

Can you please try below change:

Code: Select all

diff --git a/arch/powerpc/kernel/vdso32/gettimeofday.S b/arch/powerpc/kernel/vdso32/gettimeofday.S
index 1e0bc5955a40..afd516b572f8 100644
--- a/arch/powerpc/kernel/vdso32/gettimeofday.S
+++ b/arch/powerpc/kernel/vdso32/gettimeofday.S
@@ -98,7 +98,7 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime)
      * can be used, r7 contains NSEC_PER_SEC.
      */

-    lwz    r5,WTOM_CLOCK_SEC(r9)
+    lwz    r5,(WTOM_CLOCK_SEC+LOPART)(r9)
     lwz    r6,WTOM_CLOCK_NSEC(r9)

     /* We now have our offset in r5,r6. We create a fake dependency
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 5.1

Post by xeno74 »

Christophe's patch works! VLC plays videos without any problems! :-)

Link to the test thread: VLC doesn't play videos anymore since the PowerPC fixes 5.1-3
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 5.1

Post by xeno74 »

Hi All,

Great news! :-)

The issue with the VLC in connection with the kernel 5.1 RC2 and higher is fixed!

Link to the test thread: VLC doesn't play videos anymore since the PowerPC fixes 5.1-3

Link to the patch: [PATCH] powerpc/vdso32: fix CLOCK_MONOTONIC on PPC64

Image

Cheers,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 5.1

Post by xeno74 »

Hi All,

I released the RC3-3 of kernel 5.1 today.

New:
  • gettimeofday patch for solving the VLC issue (Thanks to Christophe Leroy)
  • Linux Git log
It also includes:
  • X1000: compressed kernel (zImage) and uncompressed kernel (vmlinux)
Download: linux-image-5.1-rc3-3-X1000_X5000.tar.gz

Screenshot of Fienix PowerPC with VLC 3.0.4 and with the RC3-3 of kernel 5.1:

Image

Please test it.

Thanks,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
User avatar
Skateman
Posts: 861
Joined: Thu Aug 10, 2017 8:36 pm
Location: The Netherlands

Re: Kernel 5.1

Post by Skateman »

RC3-3 running fine on the AmigaOne X5000 :-)

Image

big picture http://www.skateman.nl/wp-content/uploa ... 112321.png
AmigaOne X5000 -> 2GHz / 16GB RAM / Radeon RX 570 / Radeon X1950 / M-Audio 5.1 -> AmigaOS / Linux
Amiga 1200 -> Recapped / 68ec020 ACA 1221ec / CF HDD / RetroNET connected to the world
Vampire 4SA - RPi4 Running AmiKitXE Full
User avatar
xeno74
Posts: 9349
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 5.1

Post by xeno74 »

Skateman,

Thank you very much for testing the RC3-3! :-)

Cheers,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

Running Linux on AmigaONEs can require some tinkering.
Post Reply