No description
Find a file
Johannes Berg 09408cbe70 um: virtio_uml: Fix broken device handling in time-travel
[ Upstream commit af9fb41ed3 ]

If a device implementation crashes, virtio_uml will mark it
as dead by calling virtio_break_device() and scheduling the
work that will remove it.

This still seems like the right thing to do, but it's done
directly while reading the message, and if time-travel is
used, this is in the time-travel handler, outside of the
normal Linux machinery. Therefore, we cannot acquire locks
or do normal "linux-y" things because e.g. lockdep will be
confused about the context.

Move handling this situation out of the read function and
into the actual IRQ handler and response handling instead,
so that in the case of time-travel we don't call it in the
wrong context.

Chances are the system will still crash immediately, since
the device implementation crashing may also cause the time-
travel controller to go down, but at least all of that now
happens without strange warnings from lockdep.

Fixes: c8177aba37 ("um: time-travel: rework interrupt handling in ext mode")
Cc: stable@vger.kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-04-19 17:51:48 +08:00
arch um: virtio_uml: Fix broken device handling in time-travel 2023-04-19 17:51:48 +08:00
block block: fix rq-qos breakage from skipping rq_qos_done_bio() 2023-04-19 17:51:03 +08:00
certs certs/blacklist_hashes.c: fix const confusion in certs blacklist 2023-04-19 17:50:34 +08:00
crypto crypto: memneq - move into lib/ 2023-04-19 17:50:35 +08:00
Documentation mm/pagealloc: sysctl: change watermark_scale_factor max limit to 30% 2023-04-19 17:51:37 +08:00
drivers crypto: qat - re-enable registration of algorithms 2023-04-19 17:51:47 +08:00
fs exfat: fix referencing wrong parent directory information after renaming 2023-04-19 17:51:47 +08:00
include bitfield.h: Fix "type of reg too small for mask" test 2023-04-19 17:51:46 +08:00
init Kconfig: Add option for asm goto w/ tied outputs to workaround clang-13 bug 2023-04-19 17:50:04 +08:00
ipc ipc/mqueue: use get_tree_nodev() in mqueue_get_tree() 2023-04-19 17:49:52 +08:00
kernel tracing: Fix return value of trace_pid_write() 2023-04-19 17:51:47 +08:00
lib ida: don't use BUG_ON() for debugging 2023-04-19 17:51:14 +08:00
LICENSES LICENSES/dual/CC-BY-4.0: Git rid of "smart quotes" 2021-07-15 06:31:24 -06:00
mm mm/mempolicy: fix uninit-value in mpol_rebind_policy() 2023-04-19 17:51:45 +08:00
net tcp: Fix data-races around sysctl_tcp_max_reordering. 2023-04-19 17:51:44 +08:00
samples samples/landlock: Format with clang-format 2023-04-19 17:50:01 +08:00
scripts x86/extable: Rework the exception table mechanics 2023-04-19 17:51:45 +08:00
security lockdown: Fix kexec lockdown bypass with ima policy 2023-04-19 17:51:35 +08:00
sound ALSA: usb-audio: Add quirk for Fiero SC-01 (fw v1.0.0) 2023-04-19 17:51:27 +08:00
tools KVM: selftests: Fix target thread to be migrated in rseq_test 2023-04-19 17:51:44 +08:00
usr usr/include/Makefile: add linux/nfc.h to the compile-test coverage 2023-04-19 17:44:58 +08:00
virt KVM: Don't null dereference ops->destroy 2023-04-19 17:51:45 +08:00
.clang-format clang-format: Update with the latest for_each macro list 2021-05-12 23:32:39 +02:00
.cocciconfig scripts: add Linux .cocciconfig for coccinelle 2016-07-22 12:13:39 +02:00
.get_maintainer.ignore Opt out of scripts/get_maintainer.pl 2019-05-16 10:53:40 -07:00
.gitattributes .gitattributes: use 'dts' diff driver for dts files 2019-12-04 19:44:11 -08:00
.gitignore .gitignore: ignore only top-level modules.builtin 2021-05-02 00:43:35 +09:00
.mailmap mailmap: add Andrej Shadura 2021-10-18 20:22:03 -10:00
COPYING COPYING: state that all contributions really are covered by this file 2020-02-10 13:32:20 -08:00
CREDITS MAINTAINERS: Move Daniel Drake to credits 2021-09-21 08:34:58 +03:00
Kbuild kbuild: rename hostprogs-y/always to hostprogs/always-y 2020-02-04 01:53:07 +09:00
Kconfig kbuild: ensure full rebuild when the compiler is updated 2020-05-12 13:28:33 +09:00
MAINTAINERS Input: goodix - add a goodix.h header file 2023-04-19 17:50:59 +08:00
Makefile Linux 5.15.57 2023-04-19 17:51:35 +08:00
README Drop all 00-INDEX files from Documentation/ 2018-09-09 15:08:58 -06:00

Linux kernel
============

There are several guides for kernel developers and users. These guides can
be rendered in a number of formats, like HTML and PDF. Please read
Documentation/admin-guide/README.rst first.

In order to build the documentation, use ``make htmldocs`` or
``make pdfdocs``.  The formatted documentation can also be read online at:

    https://www.kernel.org/doc/html/latest/

There are various text files in the Documentation/ subdirectory,
several of them using the Restructured Text markup notation.

Please read the Documentation/process/changes.rst file, as it contains the
requirements for building and running the kernel, and information about
the problems which may result by upgrading your kernel.