Kernel 4.15

AmigaOne X5000 platform specific issues related to Linux only.
Post Reply
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Kernel 4.15

Post by xeno74 »

Hi All,

The merge window for 4.15 is open! Here is the first alpha for the X5000 and X1000.

Download: vmlinux-4.15-alpha1-AmigaOne_X1000_X5000.tar.gz

I successfully tested the first alpha on my AmigaOne X1000 today. I also tested it on my AmigaOne X5000. Unfortunately it doesn't boot on my AmigaOne X5000.

Could you please test it on your AmigaOne X5000?

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

Running Linux on AmigaONEs can require some tinkering.
Spectre660
Posts: 1525
Joined: Sat Jun 18, 2011 2:16 pm
Location: Montserrat

Re: Kernel 4.15

Post by Spectre660 »

@xeno74

Hi Christian ,

It does not boot here on my X5000 either .
I also tried unsuccessfully with my own .config too.

A Sam460ex version boots ok on my Sam460ex.
Sam460ex : Radeon Rx550 Single slot Video Card : SIL3112 SATA card
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

Spectre660 wrote:@xeno74

Hi Christian ,

It does not boot here on my X5000 either .
I also tried unsuccessfully with my own .config too.

A Sam460ex version boots ok on my Sam460ex.
Hi Julian,

Good to know. Thanks for testing. I will compile the alpha2 in the next days and test again. If it doesn’t work either then I will bisect between the final 4.14 and the alpha1.

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

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

Re: Kernel 4.15

Post by xeno74 »

Hi All,

I released the alpha2 for the X5000 and X1000 today. First, I tested it on my AmigaOne X1000. It boots but unfortunately hardware 3D acceleration doesn't work anymore. It is only Gallium 0.4 on softpipe available. I tested it with Debian Sid PPC32, ubuntu MATE 16.04.3 LTS PPC32, MATE PowerPC Remix 2017 PPC32, fedora 26 Server PPC64, and with openSUSE Tumbleweed 20170924 PPC64 on my AmigaOne X1000. I think there is a bug in the latest DRM updates.

I also tested the alpha2 on my AmigaOne X5000. Unfortunately it doesn't boot. I will bisect between the final 4.14 and the alpha1.

New:
Download: vmlinux-4.15-alpha2-AmigaOne_X1000_X5000.tar.gz

@Julian
Could you please test the hardware 3D acceleration on your Sam460ex?

@All
Please test it on your X5000 and X1000.

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

Running Linux on AmigaONEs can require some tinkering.
Spectre660
Posts: 1525
Joined: Sat Jun 18, 2011 2:16 pm
Location: Montserrat

Re: Kernel 4.15

Post by Spectre660 »

HI Christian,

Hardware acceleration has never worked on Sam460ex for any kernel.

Regards
Julian
Sam460ex : Radeon Rx550 Single slot Video Card : SIL3112 SATA card
User avatar
xeno74
Posts: 9348
Joined: Fri Mar 23, 2012 7:58 am

Re: Kernel 4.15

Post by xeno74 »

Spectre660 wrote:HI Christian,

Hardware acceleration has never worked on Sam460ex for any kernel.

Regards
Julian
OK
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: Kernel 4.15

Post by xeno74 »

Hi All,

I bisected between the final kernel 4.14.0 and the alpha1.

a8a217c22116eff6c120d753c9934089fb229af0 is the first bad commit.

Git bisect log:

Code: Select all

git log

git bisect start

git bisect good bebc6082da0a9f5d47a1ea2edc099bf671058bd4 (Linux 4.14.0 final)

git bisect bad 894025f24bd028942da3e602b87d9f7223109b14 (Linux 4.15 alpha1 Mon Nov 13 21:14:07 2017 -0800)

Output:

Bisecting: 1128 revisions left to test after this (roughly 10 steps)
[7d58e1c9059eefe0066c5acf2ffa582f6f0180e3] Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

git bisect bad

Output:

Bisecting: 559 revisions left to test after this (roughly 9 steps)
[8e9a2dba8686187d8c8179e5b86640e653963889] Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

git bisect bad

Output:

Bisecting: 272 revisions left to test after this (roughly 8 steps)
[dee02770cdcd8bc06a48c917ce5df2fb56cf6059] Merge tag 'mmc-v4.15' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc

git bisect good

Output:

Bisecting: 129 revisions left to test after this (roughly 7 steps)
[d60a540ac5f2fbab3e6fe592717b445bd7343a91] Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux

git bisect good

Output:

Bisecting: 64 revisions left to test after this (roughly 6 steps)
[7a10e2a9190628a4024ea394ce7bd641ae40ffd1] x86: Use lockdep to assert IRQs are disabled/enabled

git bisect bad

Output:

Bisecting: 32 revisions left to test after this (roughly 5 steps)
[eeafcc5a5925d0819dad462eac1d42fda5fbe36f] locking/atomics, firmware/ivc: Convert ACCESS_ONCE() to READ_ONCE()/WRITE_ONCE()

git bisect bad

Output:

Bisecting: 15 revisions left to test after this (roughly 4 steps)
[a4c1887d4c1462b0ec5a8989f8ba3cdd9057a299] locking/arch: Remove dummy arch_{read,spin,write}_lock_flags() implementations

git bisect bad

Output:

Bisecting: 7 revisions left to test after this (roughly 3 steps)
[c0905115a55c8a3011d7b7e6ee5d63653c1e99f1] locking/arch, ia64: Add __down_read_killable()

git bisect good

Output:

Bisecting: 3 revisions left to test after this (roughly 2 steps)
[0dc208b5d5feedc795cbf124539decd182c8e99e] locking/rwsem, fs: Use killable down_read() in iterate_dir()

git bisect good

Output:

Bisecting: 1 revision left to test after this (roughly 1 step)
[a8a217c22116eff6c120d753c9934089fb229af0] locking/core: Remove {read,spin,write}_can_lock()

git bisect bad

Output:

Bisecting: 0 revisions left to test after this (roughly 0 steps)
[26c4eb192c6224e5297496cead36404b62fb071b] locking/rwsem, security/apparmor: Replace homebrew use of write_can_lock() with lockdep

git bisect good

Output:

a8a217c22116eff6c120d753c9934089fb229af0 is the first bad commit
commit a8a217c22116eff6c120d753c9934089fb229af0
Author: Will Deacon <will.deacon@arm.com>
Date:   Tue Oct 3 19:25:27 2017 +0100

    locking/core: Remove {read,spin,write}_can_lock()
    
    Outside of the locking code itself, {read,spin,write}_can_lock() have no
    users in tree. Apparmor (the last remaining user of write_can_lock()) got
    moved over to lockdep by the previous patch.
    
    This patch removes the use of {read,spin,write}_can_lock() from the
    BUILD_LOCK_OPS macro, deferring to the trylock operation for testing the
    lock status, and subsequently removes the unused macros altogether. They
    aren't guaranteed to work in a concurrent environment and can give
    incorrect results in the case of qrwlock.
    
    Signed-off-by: Will Deacon <will.deacon@arm.com>
    Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: paulmck@linux.vnet.ibm.com
    Link: http://lkml.kernel.org/r/1507055129-12300-2-git-send-email-will.deacon@arm.com
    Signed-off-by: Ingo Molnar <mingo@kernel.org>

:040000 040000 5b435422698e4cb10a69c8c5d63734785b4e1f3c 35093937ba487d8b5ecf773c38439f99801f4041 M	arch
:040000 040000 c3fa2d1fc41218e43a76eb6d97808de5be3a0355 6d4682dd193d79f868b28eca9714716ce3dbf7c9 M	include
:040000 040000 2ac2fb1e58edcf3f6f912ecf66431f8b0e6914b9 d7b7814b7b349e2f0fd7578b35726037294ea9b4 M	kernel
Cheers,
Christian
http://www.amigalinux.org
http://www.supertuxkart-amiga.de

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

Re: Kernel 4.15

Post by xeno74 »

Hi All,

I compiled the latest git kernel today. Unfortunately the X5000 doesn't boot. I tried to revert the bad commit I have found with bisect but unfortunately it doesn't work because of some conflicts.

Code: Select all

git revert a8a217c22116eff6c120d753c9934089fb229af0

Code: Select all

error: could not revert a8a217c... locking/core: Remove {read,spin,write}_can_lock()
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'
I tried to revert the bad commit in the alpha1 sources (Git sources from Mon Nov 13 21:14:07 2017 -0800) but unfortunately it doesn't work either.

Code: Select all

error: could not revert a8a217c... locking/core: Remove {read,spin,write}_can_lock()
hint: after resolving the conflicts, mark the corrected paths
hint: with 'git add <paths>' or 'git rm <paths>'
hint: and commit the result with 'git commit'
I will try to figure out the problem in the source code of the bad commit.

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

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

Re: Kernel 4.15

Post by xeno74 »

Hi All,

I have found some PowerPC releated code in the bad commit.

vi arch/powerpc/include/asm/spinlock.h

I created a small patch to revert this code.

Code: Select all

--- a/arch/powerpc/include/asm/spinlock.h       2017-11-18 20:11:40.807868708 +0100
+++ b/arch/powerpc/include/asm/spinlock.h       2017-11-18 20:54:32.185724975 +0100
@@ -182,6 +182,9 @@ static inline void arch_spin_unlock(arch
  * read-locks.
  */

+#define arch_read_can_lock(rw)         ((rw)->lock >= 0)
+#define arch_write_can_lock(rw)        (!(rw)->lock)
+
 #ifdef CONFIG_PPC64
 #define __DO_SIGN_EXTEND       "extsw  %0,%0\n"
 #define WRLOCK_TOKEN           LOCK_TOKEN      /* it's negative */
patch -p0 < spinlock_4.15-1.patch

Output:

Code: Select all

patching file a/arch/powerpc/include/asm/spinlock.h
After that I compiled the kernel again. Unfortunately it doesn't boot.

I will report the problem to the Linux PPC mailing list.

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

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

Re: Kernel 4.15

Post by xeno74 »

I reported the boot issue on the Linuxppc mailing list today.

Link: Qoriq P5020 PowerPC board doesn't boot with the latest git version anymore

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

Running Linux on AmigaONEs can require some tinkering.
Post Reply