A mirror of the official Linux kernel repository just in case
Go to file
Tony Krowiak 774d10196e s390/vfio-ap: let on_scan_complete() callback filter matrix and update guest's APCB
When adapters and/or domains are added to the host's AP configuration, this
may result in multiple queue devices getting created and probed by the
vfio_ap device driver. For each queue device probed, the matrix of adapters
and domains assigned to a matrix mdev will be filtered to update the
guest's APCB. If any adapters or domains get added to or removed from the
APCB, the guest's AP configuration will be dynamically updated (i.e., hot
plug/unplug). To dynamically update the guest's configuration, its VCPUs
must be taken out of SIE for the period of time it takes to make the
update. This is disruptive to the guest's operation and if there are many
queues probed due to a change in the host's AP configuration, this could be
troublesome. The problem is exacerbated by the fact that the
'on_scan_complete' callback also filters the mdev's matrix and updates
the guest's AP configuration.

In order to reduce the potential amount of disruption to the guest that may
result from a change to the host's AP configuration, let's bypass the
filtering of the matrix and updating of the guest's AP configuration in the
probe callback - if due to a host config change - and defer it until the
'on_scan_complete' callback is invoked after the AP bus finishes its device
scan operation. This way the filtering and updating will be performed only
once regardless of the number of queues added.

Signed-off-by: Tony Krowiak <akrowiak@linux.ibm.com>
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
Fixes: 48cae940c3 ("s390/vfio-ap: refresh guest's APCB by filtering AP resources assigned to mdev")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20240115185441.31526-4-akrowiak@linux.ibm.com
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
2024-01-17 13:53:05 +01:00
arch s390/pai_ext: split function paiext_push_sample 2024-01-12 14:23:27 +01:00
block Many singleton patches against the MM code. The patch series which 2024-01-09 11:18:47 -08:00
certs This update includes the following changes: 2023-11-02 16:15:30 -10:00
crypto crypto: scomp - fix req->dst buffer overflow 2023-12-29 11:25:56 +08:00
Documentation asm-generic cleanups for 6.8 2024-01-10 18:13:44 -08:00
drivers s390/vfio-ap: let on_scan_complete() callback filter matrix and update guest's APCB 2024-01-17 13:53:05 +01:00
fs sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
include asm-generic cleanups for 6.8 2024-01-10 18:13:44 -08:00
init header cleanups for 6.8 2024-01-10 16:43:55 -08:00
io_uring Many singleton patches against the MM code. The patch series which 2024-01-09 11:18:47 -08:00
ipc shm: Slim down dependencies 2023-12-20 19:26:31 -05:00
kernel Modules changes for v6.8-rc1 2024-01-10 18:00:18 -08:00
lib s390 updates for 6.8 merge window 2024-01-10 18:18:20 -08:00
LICENSES LICENSES: Add the copyleft-next-0.3.1 license 2022-11-08 15:44:01 +01:00
mm header cleanups for 6.8 2024-01-10 16:43:55 -08:00
net header cleanups for 6.8 2024-01-10 16:43:55 -08:00
rust Kbuild updates for v6.7 2023-11-04 08:07:19 -10:00
samples hardening updates for v6.8-rc1 2024-01-10 11:03:52 -08:00
scripts asm-generic cleanups for 6.8 2024-01-10 18:13:44 -08:00
security header cleanups for 6.8 2024-01-10 16:43:55 -08:00
sound linux_kselftest-kunit-6.8-rc1 2024-01-09 17:16:58 -08:00
tools sysctl-6.8-rc1 2024-01-10 17:44:36 -08:00
usr usr/Kconfig: fix typos of "its" 2023-12-20 15:02:58 -08:00
virt vfs-6.8.misc 2024-01-08 10:26:08 -08:00
.clang-format iommu: Add for_each_group_device() 2023-05-23 08:15:51 +02:00
.cocciconfig
.get_maintainer.ignore get_maintainer: add Alan to .get_maintainer.ignore 2022-08-20 15:17:44 -07:00
.gitattributes .gitattributes: set diff driver for Rust source code files 2023-05-31 17:48:25 +02:00
.gitignore kbuild: rpm-pkg: generate kernel.spec in rpmbuild/SPECS/ 2023-10-03 20:49:09 +09:00
.mailmap lsm/stable-6.8 PR 20240105 2024-01-09 12:57:46 -08:00
.rustfmt.toml rust: add .rustfmt.toml 2022-09-28 09:02:20 +02:00
COPYING COPYING: state that all contributions really are covered by this file 2020-02-10 13:32:20 -08:00
CREDITS Quite a lot of kexec work this time around. Many singleton patches in 2024-01-09 11:46:20 -08:00
Kbuild Kbuild updates for v6.1 2022-10-10 12:00:45 -07:00
Kconfig kbuild: ensure full rebuild when the compiler is updated 2020-05-12 13:28:33 +09:00
MAINTAINERS s390/net: add Thorsten Winkler as maintainer 2024-01-17 13:45:09 +01:00
Makefile Quite a lot of kexec work this time around. Many singleton patches in 2024-01-09 11:46:20 -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.