GIT kernel with the PowerPC updates 5.11-1 doesn't boot on a FSL P5040 board and in a virtual e5500 QEMU machine
Christian Zigotzky
chzigotzky at xenosoft.de
Sat Dec 19 11:38:41 AEDT 2020
On 18 December 2020 at 11:49pm, Christian Zigotzky wrote:
> On 18 December 2020 at 10:25pm, Denis Kirjanov wrote:
> >
> >
> > On Friday, December 18, 2020, Christian Zigotzky
> <chzigotzky at xenosoft.de> wrote:
> >
> > Hello,
> >
> > I compiled the latest Git kernel with the new PowerPC updates
> 5.11-1 [1] today. Unfortunately this kernel doesn't boot on my FSL
> P5040 board [2] and in a virtual e5500 QEMU machine [3].
> >
> > I was able to revert the new PowerPC updates 5.11-1 [4] and
> after a new compiling, the kernel boots without any problems on my FSL
> P5040 board.
> >
> > Please check the new PowerPC updates 5.11-1.
> >
> >
> > Can you bisect the bad commit?
> >
> Hello Denis,
>
> I have bisected [5] and d0e3fc69d00d1f50d22d6b6acfc555ccda80ad1e
> (powerpc/vdso: Provide __kernel_clock_gettime64() on vdso32) [6] is
> the first bad commit.
>
> I was able to revert this bad commit and after a new compiling, the
> kernel boots without any problems.
>
> Thanks,
> Christian
>
> [5] https://forum.hyperion-entertainment.com/viewtopic.php?p=52077#p52077
> [6]
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d0e3fc69d00d1f50d22d6b6acfc555ccda80ad1e
>
> >
> >
> >
> > Thanks,
> > Christian
> >
> >
> > [1]
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=8a5be36b9303ae167468d4f5e1b3c090b9981396
> > [2] http://wiki.amiga.org/index.php?title=X5000
> > [3] qemu-system-ppc64 -M ppce500 -cpu e5500 -m 1024 -kernel
> uImage -drive format=raw,file=MintPPC32-X5000.img,index=0,if=virtio
> -netdev user,id=mynet0 -device virtio-net-pci,netdev=mynet0 -append
> "rw root=/dev/vda" -device virtio-vga -usb -device usb-ehci,id=ehci
> -device usb-tablet -device virtio-keyboard-pci -smp 4 -vnc :1
> > [4] git revert 8a5be36b9303ae167468d4f5e1b3c090b9981396 -m 1
> >
>
Hello,
I created a patch for reverting the bad commit. I can boot the latest
Git kernel compiled with this patch on my FSL P5040 board and in a
virtual e5500 QEMU machine.
------
diff -rupN a/arch/powerpc/include/asm/vdso/gettimeofday.h
b/arch/powerpc/include/asm/vdso/gettimeofday.h
--- a/arch/powerpc/include/asm/vdso/gettimeofday.h 2020-12-19
00:01:16.825846606 +0100
+++ b/arch/powerpc/include/asm/vdso/gettimeofday.h 2020-12-19
00:00:38.213374736 +0100
@@ -187,8 +187,6 @@ int __c_kernel_clock_getres(clockid_t cl
#else
int __c_kernel_clock_gettime(clockid_t clock, struct old_timespec32 *ts,
const struct vdso_data *vd);
-int __c_kernel_clock_gettime64(clockid_t clock, struct
__kernel_timespec *ts,
- const struct vdso_data *vd);
int __c_kernel_clock_getres(clockid_t clock_id, struct old_timespec32
*res,
const struct vdso_data *vd);
#endif
diff -rupN a/arch/powerpc/kernel/vdso32/gettimeofday.S
b/arch/powerpc/kernel/vdso32/gettimeofday.S
--- a/arch/powerpc/kernel/vdso32/gettimeofday.S 2020-12-19
00:01:16.829846652 +0100
+++ b/arch/powerpc/kernel/vdso32/gettimeofday.S 2020-12-19
00:00:37.817369691 +0100
@@ -35,15 +35,6 @@ V_FUNCTION_BEGIN(__kernel_clock_gettime)
cvdso_call __c_kernel_clock_gettime
V_FUNCTION_END(__kernel_clock_gettime)
-/*
- * Exact prototype of clock_gettime64()
- *
- * int __kernel_clock_gettime64(clockid_t clock_id, struct __timespec64
*ts);
- *
- */
-V_FUNCTION_BEGIN(__kernel_clock_gettime64)
- cvdso_call __c_kernel_clock_gettime64
-V_FUNCTION_END(__kernel_clock_gettime64)
/*
* Exact prototype of clock_getres()
diff -rupN a/arch/powerpc/kernel/vdso32/vdso32.lds.S
b/arch/powerpc/kernel/vdso32/vdso32.lds.S
--- a/arch/powerpc/kernel/vdso32/vdso32.lds.S 2020-12-19
00:01:16.829846652 +0100
+++ b/arch/powerpc/kernel/vdso32/vdso32.lds.S 2020-12-19
00:00:38.209374686 +0100
@@ -118,7 +118,6 @@ VERSION
__kernel_get_syscall_map;
__kernel_gettimeofday;
__kernel_clock_gettime;
- __kernel_clock_gettime64;
__kernel_clock_getres;
__kernel_time;
__kernel_get_tbfreq;
diff -rupN a/arch/powerpc/kernel/vdso32/vgettimeofday.c
b/arch/powerpc/kernel/vdso32/vgettimeofday.c
--- a/arch/powerpc/kernel/vdso32/vgettimeofday.c 2020-12-19
00:01:16.829846652 +0100
+++ b/arch/powerpc/kernel/vdso32/vgettimeofday.c 2020-12-19
00:00:37.817369691 +0100
@@ -10,12 +10,6 @@ int __c_kernel_clock_gettime(clockid_t c
return __cvdso_clock_gettime32_data(vd, clock, ts);
}
-int __c_kernel_clock_gettime64(clockid_t clock, struct
__kernel_timespec *ts,
- const struct vdso_data *vd)
-{
- return __cvdso_clock_gettime_data(vd, clock, ts);
-}
-
int __c_kernel_gettimeofday(struct __kernel_old_timeval *tv, struct
timezone *tz,
const struct vdso_data *vd)
{
------
More information about the Linuxppc-dev
mailing list