Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Jan 2022 20:15:54 +0000
From:      bugzilla-noreply@freebsd.org
To:        x11@FreeBSD.org
Subject:   =?UTF-8?B?W0J1ZyAyNjExNjZdIExpbnV4S1BJIGtlcm5lbCBwYW5pY3M6IG1p?= =?UTF-8?B?X3N3aXRjaDogc3dpdGNoIGluIGEgY3JpdGljYWwgc2VjdGlvbiDigJMgMTQu?= =?UTF-8?B?MC1DVVJSRU5UIG1haW4tbjI1MjM4MS03NWQyMGE1ZTM4NiAoMjAyMi0wMS0x?= =?UTF-8?B?MSk=?=
Message-ID:  <bug-261166-7141-WlKNcczIAd@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-261166-7141@https.bugs.freebsd.org/bugzilla/>
References:  <bug-261166-7141@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D261166

--- Comment #12 from commit-hook@FreeBSD.org ---
A commit in branch main references this bug:

URL:
https://cgit.FreeBSD.org/src/commit/?id=3D89889ab470b9f1a1cd36913dd219b78ef=
bf484df

commit 89889ab470b9f1a1cd36913dd219b78efbf484df
Author:     Vladimir Kondratyev <wulf@FreeBSD.org>
AuthorDate: 2022-01-18 20:14:13 +0000
Commit:     Vladimir Kondratyev <wulf@FreeBSD.org>
CommitDate: 2022-01-18 20:14:13 +0000

    LinuxKPI: Allow wake_up to be executed within a critical section

    by replaceing of spin_lock() call with spin_lock_irqsave()

    This fixes following panic in drm-kmod:

    panic: mi_switch: switch in a critical section
    cpuid =3D 2
    time =3D 1636939794
    KDB: stack backtrace:
    db_trace_self_wrapper() at db_trace_self_wrapper+0x2b
    vpanic() at vpanic+0x187
    panic() at panic+0x43
    mi_switch() at mi_switch+0x198
    __mtx_lock_sleep() at __mtx_lock_sleep+0x1c9
    __mtx_lock_flags() at __mtx_lock_flags+0xa2
    linux_wake_up() at linux_wake_up+0x38
    __active_retire() at __active_retire+0xb7
    dma_fence_signal() at dma_fence_signal+0x100
    dma_resv_add_shared_fence() at dma_resv_add_shared_fence+0x96
    i915_gem_do_execbuffer() at i915_gem_do_execbuffer+0x11d0
    i915_gem_execbuffer2_ioctl() at i915_gem_execbuffer2_ioctl+0x19a
    drm_ioctl_kernel() at drm_ioctl_kernel+0x72
    drm_ioctl() at drm_ioctl+0x2c4
    linux_file_ioctl() at linux_file_ioctl+0x297
    kern_ioctl() at kern_ioctl+0x1dc
    sys_ioctl() at sys_ioctl+0x124
    amd64_syscall() at amd64_syscall+0x124
    fast_syscall_common() at fast_syscall_common+0xf8
    --- syscall (54, FreeBSD ELF64, sys_ioctl)

    MFC after:      1 week
    Reviewed by:    manu
    Reported by:    Graham Perrin <grahamperrin_AT_gmail_DOT_com>
    PR:             261166
    Differential Revision:  https://reviews.freebsd.org/D33888

 sys/compat/linuxkpi/common/src/linux_schedule.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-261166-7141-WlKNcczIAd>