No description
Find a file
Bob Pearson 70518f3aaf RDMA/rxe: Fix incomplete state save in rxe_requester
[ Upstream commit 5d122db2ff ]

If a send packet is dropped by the IP layer in rxe_requester()
the call to rxe_xmit_packet() can fail with err == -EAGAIN.
To recover, the state of the wqe is restored to the state before
the packet was sent so it can be resent. However, the routines
that save and restore the state miss a significnt part of the
variable state in the wqe, the dma struct which is used to process
through the sge table. And, the state is not saved before the packet
is built which modifies the dma struct.

Under heavy stress testing with many QPs on a fast node sending
large messages to a slow node dropped packets are observed and
the resent packets are corrupted because the dma struct was not
restored. This patch fixes this behavior and allows the test cases
to succeed.

Fixes: 3050b99850 ("IB/rxe: Fix race condition between requester and completer")
Link: https://lore.kernel.org/r/20230721200748.4604-1-rpearsonhpe@gmail.com
Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2023-09-13 09:42:52 +02:00
arch x86/APM: drop the duplicate APM_MINOR_DEV macro 2023-09-13 09:42:52 +02:00
block block/mq-deadline: use correct way to throttling write requests 2023-09-13 09:42:42 +02:00
certs
crypto crypto: api - Use work queue in crypto_destroy_instance 2023-09-13 09:42:32 +02:00
Documentation dt-bindings: extcon: maxim,max77843: restrict connector properties 2023-09-13 09:42:50 +02:00
drivers RDMA/rxe: Fix incomplete state save in rxe_requester 2023-09-13 09:42:52 +02:00
fs pNFS: Fix assignment of xprtdata.cred 2023-09-13 09:42:49 +02:00
include NFSv4.2: Rework scratch handling for READ_PLUS 2023-09-13 09:42:48 +02:00
init sched/psi: Select KERNFS as needed 2023-09-13 09:42:28 +02:00
io_uring io_uring: fix drain stalls by invalid SQE 2023-09-13 09:42:43 +02:00
ipc
kernel cgroup/cpuset: Inherit parent's load balance state in v2 2023-09-13 09:42:49 +02:00
lib maple_tree: disable mas_wr_append() when other readers are possible 2023-08-30 16:11:13 +02:00
LICENSES
mm net-memcg: Fix scope of sockmem pressure indicators 2023-09-13 09:42:33 +02:00
net netrom: Deny concurrent connect(). 2023-09-13 09:42:35 +02:00
rust rust: allocator: Prevent mis-aligned allocation 2023-08-11 12:08:18 +02:00
samples samples/bpf: fix broken map lookup probe 2023-09-13 09:42:34 +02:00
scripts kbuild: rust_is_available: fix confusion when a version appears in the path 2023-09-13 09:42:32 +02:00
security smackfs: Prevent underflow in smk_set_cipso() 2023-09-13 09:42:42 +02:00
sound ALSA: ac97: Fix possible error value of *rac97 2023-09-13 09:42:44 +02:00
tools selftests/bpf: Clean up fmod_ret in bench_rename test script 2023-09-13 09:42:33 +02:00
usr
virt kvm/vfio: ensure kvg instance stays around in kvm_vfio_group_add() 2023-09-13 09:42:46 +02:00
.clang-format
.cocciconfig
.get_maintainer.ignore
.gitattributes
.gitignore
.mailmap
.rustfmt.toml
COPYING
CREDITS
Kbuild
Kconfig
MAINTAINERS devlink: move code to a dedicated directory 2023-08-30 16:11:00 +02:00
Makefile kbuild: rust_is_available: remove -v option 2023-09-13 09:42:32 +02:00
README

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.