mirror-linux/drivers
Harald Freudenberger af40322e90 s390/zcrypt: do not retry administrative requests
All kind of administrative requests should not been retried. Some card
firmware detects this and assumes a replay attack. This patch checks
on failure if the low level functions indicate a retry (EAGAIN) and
checks for the ADMIN flag set on the request message.  If this both
are true, the response code for this message is changed to EIO to make
sure the zcrypt API layer does not attempt to retry the request. As of
now the ADMIN flag is set for a request message when
- for EP11 the field 'flags' of the EP11 CPRB struct has the leftmost
  bit set.
- for CCA when the CPRB minor version is 'T3', 'T5', 'T6' or 'T7'.

Please note that the do-not-retry only applies to a request
which has been sent to the card (= has been successfully enqueued) but
the reply indicates some kind of failure and by default it would be
replied. It is totally fine to retry a request if a previous attempt
to enqueue the msg into the firmware queue had some kind of failure
and thus the card has never seen this request.

Reported-by: Frank Uhlig <Frank.Uhlig1@ibm.com>
Signed-off-by: Harald Freudenberger <freude@linux.ibm.com>
Reviewed-by: Holger Dengler <dengler@linux.ibm.com>
Cc: stable@vger.kernel.org
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
2023-07-03 11:19:41 +02:00
..
accel accel/qaic: Call DRM helper function to destroy prime GEM 2023-06-20 08:07:29 -06:00
accessibility
acpi Power management updates for 6.5-rc1 2023-06-26 19:36:30 -07:00
amba
android binder: fix UAF of alloc->vma in race with munmap() 2023-05-20 17:56:23 +01:00
ata ata: libata-scsi: Avoid deadlock on rescan after device resume 2023-06-18 12:00:49 +09:00
atm
auxdisplay auxdisplay: Switch i2c drivers back to use .probe() 2023-06-02 13:23:32 +02:00
base Power management updates for 6.5-rc1 2023-06-26 19:36:30 -07:00
bcma
block for-6.5/block-2023-06-23 2023-06-26 12:47:20 -07:00
bluetooth Bluetooth: hci_qca: fix debugfs registration 2023-06-05 17:13:14 -07:00
bus modules-6.4-rc1 2023-04-27 16:36:55 -07:00
cdrom cdrom: Fix spectre-v1 gadget 2023-06-22 07:48:08 -06:00
cdx cdx: fix build failure due to sysfs 'bus_type' argument needing to be const 2023-04-27 16:21:32 -07:00
char for-6.5/splice-2023-06-23 2023-06-26 11:52:12 -07:00
clk Time, timekeeping and related device driver updates: 2023-06-26 14:10:45 -07:00
clocksource Scheduler changes for v6.5: 2023-06-27 14:03:21 -07:00
comedi
connector
counter - New Drivers 2023-05-02 10:41:31 -07:00
cpufreq cpufreq: intel_pstate: Fix energy_performance_preference for passive 2023-06-21 19:42:58 +02:00
cpuidle cpuidle: Use local_clock_noinstr() 2023-06-05 21:11:09 +02:00
crypto crypto: update some Arm documentation references 2023-06-13 03:47:38 -06:00
cxl cxl: Explicitly initialize resources when media is not ready 2023-05-26 13:34:39 -07:00
dax
dca Mainly singleton patches all over the place. Series of note are: 2023-04-27 19:57:00 -07:00
devfreq PM / devfreq: mtk-cci: Fix variable deferencing before NULL check 2023-05-29 23:25:31 +09:00
dio
dma dmaengine: at_hdmac: Extend the Flow Controller bitfield to three bits 2023-05-24 11:20:28 +05:30
dma-buf udmabuf: revert 'Add support for mapping hugepages (v4)' 2023-06-19 13:19:32 -07:00
edac - Add initial support for RAS hardware found on AMD server GPUs (MI200). 2023-06-26 15:09:18 -07:00
eisa
extcon
firewire firewire: net: fix unexpected release of object for asynchronous request packet 2023-05-11 09:06:49 +09:00
firmware - Add support for unaccepted memory as specified in the UEFI spec v2.9. 2023-06-26 15:32:39 -07:00
fpga Char/Misc drivers for 6.4-rc1 2023-04-27 12:07:50 -07:00
fsi
gnss
gpio gpiolib: Fix irq_domain resource tracking for gpiochip_irqchip_add_domain() 2023-06-19 14:57:38 +02:00
gpu objtool changes for v6.5: 2023-06-27 15:05:41 -07:00
greybus
hid for-linus-2023060501 2023-06-06 04:36:02 -07:00
hsi
hte Devicetree updates for v6.4, part 2: 2023-04-27 10:09:05 -07:00
hv x86/hyperv: Fix hyperv_pcpu_input_arg handling when CPUs go online/offline 2023-06-17 23:09:47 +00:00
hwmon hwmon: (k10temp) Add PCI ID for family 19, model 78h 2023-05-08 11:36:19 +02:00
hwspinlock
hwtracing arm64 updates for 6.5: 2023-06-26 17:11:53 -07:00
i2c i2c: imx-lpi2c: fix type char overflow issue when calculating the clock cycle 2023-06-23 12:58:24 +02:00
i3c i3c: ast2600: set variable ast2600_i3c_ops storage-class-specifier to static 2023-04-30 23:50:26 +02:00
idle intel_idle: Add a "Long HLT" C1 state for the VM guest mode 2023-06-21 19:46:58 +02:00
iio iio: imu: inv_icm42600: fix timestamp reset 2023-05-20 17:33:14 +01:00
infiniband RCU pull request for v6.5 2023-06-27 10:37:01 -07:00
input Move the Arm architecture documentation under Documentation/arch/. This 2023-06-27 11:58:16 -07:00
interconnect modules-6.4-rc1 2023-04-27 16:36:55 -07:00
iommu Locking changes for v6.5: 2023-06-27 14:14:30 -07:00
ipack
irqchip ARM updates for v6.5-rc1 2023-06-26 17:07:53 -07:00
isdn Including fixes from netfilter. 2023-05-05 19:12:01 -07:00
leds leds: qcom-lpg: Fix PWM period limits 2023-06-03 17:00:28 +02:00
macintosh powerpc updates for 6.4 2023-04-28 16:24:32 -07:00
mailbox mailbox: mailbox-test: fix a locking issue in mbox_test_message_write() 2023-05-31 13:26:44 -05:00
mcb
md Locking changes for v6.5: 2023-06-27 14:14:30 -07:00
media Revert "media: dvb-core: Fix use-after-free on race condition at dvb_frontend" 2023-06-14 23:16:29 +01:00
memory ARM: SoC drivers for v6.4 2023-04-25 12:02:16 -07:00
memstick
message Objtool changes for v6.4: 2023-04-28 14:02:54 -07:00
mfd - New Drivers 2023-05-02 10:41:31 -07:00
misc objtool changes for v6.5: 2023-06-27 15:05:41 -07:00
mmc for-6.5/block-2023-06-23 2023-06-26 12:47:20 -07:00
most
mtd for-6.5/block-2023-06-23 2023-06-26 12:47:20 -07:00
mux
net Thermal control updates for 6.5-rc1 2023-06-26 19:41:26 -07:00
nfc nfc: fdp: Add MODULE_FIRMWARE macros 2023-06-18 11:19:52 +01:00
ntb
nubus nubus: Don't list slot resources by default 2023-05-22 13:51:56 +02:00
nvdimm
nvme for-6.5/block-2023-06-23 2023-06-26 12:47:20 -07:00
nvmem modules-6.4-rc1 2023-04-27 16:36:55 -07:00
of of: overlay: Fix missing of_node_put() in error case of init_overlay_changeset() 2023-06-09 16:12:37 -06:00
opp Devicetree updates for v6.4, part 2: 2023-04-27 10:09:05 -07:00
parisc parisc: Replace regular spinlock with spin_trylock on panic path 2023-05-03 17:43:26 +02:00
parport
pci hyperv-fixes for 6.4-rc8 2023-06-19 17:05:43 -07:00
pcmcia
peci
perf arm64 updates for 6.5: 2023-06-26 17:11:53 -07:00
phy phy: qcom-snps: correct struct qcom_snps_hsphy kerneldoc 2023-05-16 19:48:55 +05:30
pinctrl Merge branches 'pm-sleep' and 'pm-domains' 2023-06-26 17:44:50 +02:00
platform chrome platform changes for 6.5 2023-06-26 20:12:07 -07:00
pnp
power power: supply: Fix logic checking if system is running from battery 2023-05-16 23:02:56 +02:00
powercap powercap: RAPL: Fix a NULL vs IS_ERR() bug 2023-06-12 19:51:21 +02:00
pps
ps3
ptp Driver core changes for 6.4-rc1 2023-04-27 11:53:57 -07:00
pwm docs: update some straggling Documentation/arm references 2023-06-16 08:31:47 -06:00
rapidio Mainly singleton patches all over the place. Series of note are: 2023-04-27 19:57:00 -07:00
ras ras/debugfs: Fix error checking for debugfs_create_dir() 2023-05-16 21:12:23 +02:00
regulator regulator: qcom-rpmh: Fix regulators for PM8550 2023-06-07 14:20:04 +01:00
remoteproc Mainly singleton patches all over the place. Series of note are: 2023-04-27 19:57:00 -07:00
reset Nothing looks out of the ordinary in this batch of clk driver updates. There 2023-04-29 17:29:39 -07:00
rpmsg Driver core changes for 6.4-rc1 2023-04-27 11:53:57 -07:00
rtc - New Drivers 2023-05-02 10:41:31 -07:00
s390 s390/zcrypt: do not retry administrative requests 2023-07-03 11:19:41 +02:00
sbus Driver core changes for 6.4-rc1 2023-04-27 11:53:57 -07:00
scsi for-6.5/block-2023-06-23 2023-06-26 12:47:20 -07:00
sh
siox
slimbus
soc ARM: SoC fixes for 6.4, part 2 2023-06-10 13:01:09 -07:00
soundwire soundwire: stream: Add missing clear of alloc_slave_rt 2023-06-08 17:08:04 +05:30
spi spi: spi-geni-qcom: correctly handle -EPROBE_DEFER from dma_request_chan() 2023-06-15 14:58:45 +01:00
spmi
ssb
staging Staging driver fix for 6.4-rc7 2023-06-17 11:04:10 -07:00
target for-6.5/block-2023-06-23 2023-06-26 12:47:20 -07:00
tc
tee AMDTEE add return origin to load TA command 2023-06-07 12:58:22 +02:00
thermal Thermal control updates for 6.5-rc1 2023-06-26 19:41:26 -07:00
thunderbolt thunderbolt: Mask ring interrupt on Intel hardware as well 2023-05-31 10:37:21 +03:00
tty Move the Arm architecture documentation under Documentation/arch/. This 2023-06-27 11:58:16 -07:00
ufs scsi: ufs: core: Fix MCQ nr_hw_queues 2023-05-16 21:07:26 -04:00
uio
usb usb: gadget: udc: core: Prevent soft_connect_store() race 2023-06-13 12:16:34 +02:00
vdpa vdpa/mlx5: Fix hang when cvq commands are triggered during device unregister 2023-06-08 15:43:08 -04:00
vfio vfio/type1: check pfn valid before converting to struct page 2023-05-23 14:16:29 -06:00
vhost vhost_vdpa: support PACKED when setting-getting vring_base 2023-06-09 12:08:04 -04:00
video fbdev: bw2: Convert to platform remove callback returning void 2023-05-30 18:33:25 +02:00
virt virt: sevguest: Add CONFIG_CRYPTO dependency 2023-06-09 15:53:07 +02:00
virtio - Nick Piggin's "shoot lazy tlbs" series, to improve the peformance of 2023-04-27 19:42:02 -07:00
vlynq
w1 Char/Misc drivers for 6.4-rc1 2023-04-27 12:07:50 -07:00
watchdog linux-watchdog 6.4-rc1 tag 2023-05-04 18:33:56 -07:00
xen xen: branch for v6.4-rc4 2023-05-27 09:42:56 -07:00
zorro
Kconfig
Makefile