[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: X Display Problem on G3 Series PowerBook (Wallstreet)

On 7/18/21 8:59 PM, Stan Johnson wrote:
> Hello,
> I have a PowerBook Wallstreet, 512 MiB memory, 266 MHz with the current
> Debian SID installed.
> While attempting to upgrade the kernel from 5.6.13 to 5.13.2, I'm having
> trouble getting X to work. The symptoms are that in 5.13.2, the screen
> goes blank and never comes back. Since the network and disk access were
> ok, I was able to login and noticed that wdm is running. The Xorg.0.log
> files in /var/log are essentially the same for both kernels; I can send
> those log files if someone might find them useful (I didn't want to send
> large files to the entire list).
> ...

Thanks for all the suggestions.

With some help from Finn Thain, this is what git bisect identifies as
the offending commit:

d3ccc9781560af051554017c702631560bdc0811 is the first bad commit
commit d3ccc9781560af051554017c702631560bdc0811
Author: Christopher M. Riedl <cmr@codefail.de>
Date:   Fri Feb 26 19:12:59 2021 -0600

    powerpc/signal: Use __get_user() to copy sigset_t

    Usually sigset_t is exactly 8B which is a "trivial" size and does not
    warrant using __copy_from_user(). Use __get_user() directly in
    anticipation of future work to remove the trivial size optimizations
    from __copy_from_user().

    The ppc32 implementation of get_sigset_t() previously called
    copy_from_user() which, unlike __copy_from_user(), calls access_ok().
    Replacing this w/ __get_user() (no access_ok()) is fine here since both
    callsites in signal_32.c are preceded by an earlier access_ok().

    Signed-off-by: Christopher M. Riedl <cmr@codefail.de>
    Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/20210227011259.11992-11-cmr@codefail.de

 arch/powerpc/kernel/signal.h    | 7 +++++++
 arch/powerpc/kernel/signal_32.c | 2 +-
 arch/powerpc/kernel/signal_64.c | 4 ++--
 3 files changed, 10 insertions(+), 3 deletions(-)

I'm cc'ing Christopher M. Riedl since I'm not sure what the next step
should be, or even how to confirm whether the identified commit is
really the issue.

Here's the entire git bisect log:

$ git bisect log
git bisect start
# bad: [8cae8cd89f05f6de223d63e6d15e31c8ba9cf53b] seq_file: disallow
extremely large seq buffer allocations
git bisect bad 8cae8cd89f05f6de223d63e6d15e31c8ba9cf53b
# good: [9d31d2338950293ec19d9b095fbaa9030899dcb4] Merge tag
'net-next-5.13' of
git bisect good 9d31d2338950293ec19d9b095fbaa9030899dcb4
# bad: [05d69d950d9d84218fc9beafd02dea1f6a70e09e] xen-blkfront: sanitize
the removal state machine
git bisect bad 05d69d950d9d84218fc9beafd02dea1f6a70e09e
# bad: [4ff2473bdb4cf2bb7d208ccf4418d3d7e6b1652c] Merge tag
'block-5.13-2021-05-22' of git://git.kernel.dk/linux-block
git bisect bad 4ff2473bdb4cf2bb7d208ccf4418d3d7e6b1652c
# bad: [152d32aa846835987966fd20ee1143b0e05036a0] Merge tag 'for-linus'
of git://git.kernel.org/pub/scm/virt/kvm/kvm
git bisect bad 152d32aa846835987966fd20ee1143b0e05036a0
# bad: [b71428d7ab333a157216a1d73c8c82a178efada9] Merge tag
'sound-5.13-rc1' of
git bisect bad b71428d7ab333a157216a1d73c8c82a178efada9
# good: [ffc9841d5200a484ea0ecc645157b4d7b873f3a6] Merge remote-tracking
branch 'asoc/for-5.13' into asoc-next
git bisect good ffc9841d5200a484ea0ecc645157b4d7b873f3a6
# bad: [5256426247837feb8703625bda7fcfc824af04cf] powerpc/signal32: Fix
erroneous SIGSEGV on RT signal return
git bisect bad 5256426247837feb8703625bda7fcfc824af04cf
# bad: [c6b4c9147f8b85d159f670d7bce71a93d16062a2] powerpc/64: Move
security code into security.c
git bisect bad c6b4c9147f8b85d159f670d7bce71a93d16062a2
# bad: [21eb58ae4fce559d4e025df042db2bc0bb100f93] powerpc/32s: Create C
version of kuap save/restore/check helpers
git bisect bad 21eb58ae4fce559d4e025df042db2bc0bb100f93
# bad: [a58cbed68315111c663f35603a42547f72acd6f8] powerpc/traps: Declare
unrecoverable_exception() as __noreturn
git bisect bad a58cbed68315111c663f35603a42547f72acd6f8
# good: [e63ceebdad82f85e48b018abfc6af4ed6958179e] powerpc/lib: Don't
use __put_user_asm_goto() outside of uaccess.h
git bisect good e63ceebdad82f85e48b018abfc6af4ed6958179e
# good: [c6c9645e37483444ec5182373455b2f22e4b1535] powerpc/signal64:
Remove non-inline calls from setup_sigcontext()
git bisect good c6c9645e37483444ec5182373455b2f22e4b1535
# good: [96d7a4e06fab9fbc4f67c563af65b073902f3e61] powerpc/signal64:
Rewrite handle_rt_signal64() to minimise uaccess switches
git bisect good 96d7a4e06fab9fbc4f67c563af65b073902f3e61
# bad: [d3ccc9781560af051554017c702631560bdc0811] powerpc/signal: Use
__get_user() to copy sigset_t
git bisect bad d3ccc9781560af051554017c702631560bdc0811
# good: [0f92433b8f9f76608528101e7a81cd3bfd00e236] powerpc/signal64:
Rewrite rt_sigreturn() to minimise uaccess switches
git bisect good 0f92433b8f9f76608528101e7a81cd3bfd00e236
# first bad commit: [d3ccc9781560af051554017c702631560bdc0811]
powerpc/signal: Use __get_user() to copy sigset_t


Reply to: