linux/drivers
Avri Altman 57488e25ef scsi: ufs: ufshpb: Properly handle max-single-cmd
[ Upstream commit 9ec5128a8b ]

The spec recommends that for transfer length larger than the max-single-cmd
attribute (bMAX_DATA_SIZE_FOR_HPB_SINGLE_CMD) it is possible to couple
pre-requests with the HPB-READ command.  Being a recommendation, using
pre-requests can be perceived merely as a means of optimization.  A common
practice was to send pre-requests for chunks within some interval, and
leave the READ10 untouched if larger.

Now that the pre-request flows have been removed, all the commands are
single commands.  Properly handle this attribute and do not send HPB-READ
for transfer lengths larger than max-single-cmd.

[mkp: resolve conflict]

Fixes: 09d9e4d041 ("scsi: ufs: ufshpb: Remove HPB2.0 flows")
Link: https://lore.kernel.org/r/20211031123654.17719-1-avri.altman@wdc.com
Reviewed-by: Daejun Park <daejun7.park@samsung.com>
Signed-off-by: Avri Altman <avri.altman@wdc.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-11-18 19:17:07 +01:00
..
accessibility
acpi ACPI: PMIC: Fix intel_pmic_regs_handler() read accesses 2021-11-18 19:17:06 +01:00
amba
android
ata
atm
auxdisplay auxdisplay: ht16k33: Fix frame buffer device blanking 2021-11-18 19:17:02 +01:00
base driver core: Fix possible memory leak in device_link_add() 2021-11-18 19:16:50 +01:00
bcma
block nbd: fix possible overflow for 'first_minor' in nbd_dev_add() 2021-11-18 19:17:05 +01:00
bluetooth Bluetooth: hci_h5: Fix (runtime)suspend issues on RTL8723BS HCIs 2021-11-18 19:16:25 +01:00
bus bus: ti-sysc: Fix timekeeping_suspended warning on resume 2021-11-18 19:16:48 +01:00
cdrom
char ipmi: kcs_bmc: Fix a memory leak in the error handling path of 'kcs_bmc_serio_add_device()' 2021-11-18 19:16:44 +01:00
clk clk: at91: clk-master: fix prescaler logic 2021-11-18 19:16:56 +01:00
clocksource clocksource/drivers/timer-ti-dm: Select TIMER_OF 2021-11-18 19:16:39 +01:00
comedi
connector
counter
cpufreq cpufreq: intel_pstate: Fix cpu->pstate.turbo_freq initialization 2021-11-18 19:16:42 +01:00
cpuidle cpuidle: Fix kobject memory leaks in error paths 2021-11-18 19:16:29 +01:00
crypto crypto: octeontx2 - set assoclen in aead_do_fallback() 2021-11-18 19:16:33 +01:00
cxl cxl/pci: Fix NULL vs ERR_PTR confusion 2021-11-18 19:16:04 +01:00
dax
dca
devfreq
dio
dma dmaengine: idxd: fix resource leak on dmaengine driver disable 2021-11-18 19:17:04 +01:00
dma-buf dma-buf: WARN on dmabuf release with pending attachments 2021-11-18 19:16:08 +01:00
edac EDAC/amd64: Handle three rank interleaving mode 2021-11-18 19:16:30 +01:00
eisa
extcon
firewire
firmware firmware: qcom_scm: Fix error retval in __qcom_scm_is_call_available() 2021-11-18 19:16:55 +01:00
fpga
fsi
gnss
gpio gpio: realtek-otto: fix GPIO line IRQ offset 2021-11-18 19:17:04 +01:00
gpu drm/bridge: nwl-dsi: Add atomic_get_input_bus_fmts 2021-11-18 19:17:01 +01:00
greybus
hid HID: u2fzero: properly handle timeouts in usb_submit_urb 2021-11-18 19:16:56 +01:00
hsi
hv
hwmon hwmon: (pmbus/lm25066) Let compiler determine outer dimension of lm25066_coeff 2021-11-18 19:16:32 +01:00
hwspinlock
hwtracing coresight: trbe: Defer the probe on offline CPUs 2021-11-18 19:16:06 +01:00
i2c i2c: xlr: Fix a resource leak in the error handling path of 'xlr_i2c_probe()' 2021-11-18 19:17:04 +01:00
i3c
idle
iio iio: adis: do not disabe IRQs in 'adis_init()' 2021-11-18 19:16:54 +01:00
infiniband RDMA/core: Require the driver to set the IOVA correctly during rereg_mr 2021-11-18 19:16:58 +01:00
input Input: st1232 - increase "wait ready" timeout 2021-11-18 19:17:01 +01:00
interconnect
iommu iommu/dma: Fix incorrect error return on iommu deferred attach 2021-11-18 19:16:57 +01:00
ipack
irqchip irq: mips: avoid nested irq_enter() 2021-11-18 19:16:40 +01:00
isdn
leds
macintosh
mailbox mailbox: mtk-cmdq: Fix local clock ID usage 2021-11-18 19:16:35 +01:00
mcb
md md: update superblock after changing rdev flags in state_store 2021-11-18 19:16:16 +01:00
media media: ir_toy: assignment to be16 should be of correct type 2021-11-18 19:16:34 +01:00
memory memory: fsl_ifc: fix leak of irq and nand_irq in fsl_ifc_ctrl_probe 2021-11-18 19:16:51 +01:00
memstick memstick: jmb38x_ms: use appropriate free function in jmb38x_ms_alloc_host() 2021-11-18 19:16:32 +01:00
message
mfd mfd: simple-mfd-i2c: Select MFD_CORE to fix build error 2021-11-18 19:16:06 +01:00
misc
mmc mmc: mxs-mmc: disable regulator on error and in the remove function 2021-11-18 19:16:34 +01:00
most most: fix control-message timeouts 2021-11-18 19:16:08 +01:00
mtd mtd: core: don't remove debugfs directory if device is in use 2021-11-18 19:17:01 +01:00
mux
net ice: Fix not stopping Tx queues for VFs 2021-11-18 19:17:06 +01:00
nfc
ntb
nubus
nvdimm nvdimm/btt: do not call del_gendisk() if not needed 2021-11-18 19:17:06 +01:00
nvme nvme-rdma: fix error code in nvme_rdma_setup_ctrl 2021-11-18 19:16:38 +01:00
nvmem
of of: unittest: fix EXPECT text for gpio hog errors 2021-11-18 19:16:45 +01:00
opp opp: Fix return in _opp_add_static_v2() 2021-11-18 19:17:00 +01:00
parisc
parport
pci PCI: j721e: Fix j721e_pcie_probe() error path 2021-11-18 19:17:06 +01:00
pcmcia
perf
phy phy: Sparx5 Eth SerDes: Fix return value check in sparx5_serdes_probe() 2021-11-18 19:16:56 +01:00
pinctrl pinctrl: equilibrium: Fix function addition in multiple groups 2021-11-18 19:16:55 +01:00
platform platform/x86: thinkpad_acpi: Fix bitwise vs. logical warning 2021-11-18 19:16:34 +01:00
pnp
power power: supply: bq27xxx: Fix kernel crash on IRQ handler register error 2021-11-18 19:16:58 +01:00
powercap
pps
ps3
ptp
pwm
rapidio
ras
regulator
remoteproc remoteproc: Fix a memory leak in an error handling path in 'rproc_handle_vdev()' 2021-11-18 19:17:01 +01:00
reset
rpmsg
rtc rtc: rv3032: fix error handling in rv3032_clkout_set_rate() 2021-11-18 19:17:01 +01:00
s390
sbus
scsi scsi: ufs: ufshpb: Properly handle max-single-cmd 2021-11-18 19:17:07 +01:00
sh
siox
slimbus
soc soc: fsl: dpaa2-console: free buffer before returning from dpaa2_console_read 2021-11-18 19:17:02 +01:00
soundwire soundwire: bus: stop dereferencing invalid slave pointer 2021-11-18 19:16:54 +01:00
spi spi: spi-rpc-if: Check return value of rpcif_sw_init() 2021-11-18 19:16:42 +01:00
spmi
ssb
staging staging: ks7010: select CRYPTO_HASH/CRYPTO_MICHAEL_MIC 2021-11-18 19:16:52 +01:00
target scsi: target: core: Remove from tmr_list during LUN unlink 2021-11-18 19:17:03 +01:00
tc
tee
thermal thermal/drivers/qcom/lmh: make QCOM_LMH depends on QCOM_SCM 2021-11-18 19:16:34 +01:00
thunderbolt
tty serial: cpm_uart: Protect udbg definitions by CONFIG_SERIAL_CPM_CONSOLE 2021-11-18 19:16:57 +01:00
uio
usb usb: dwc3: gadget: Skip resizing EP's TX FIFO if already resized 2021-11-18 19:16:54 +01:00
vdpa vdpa/mlx5: Fix clearing of VIRTIO_NET_F_MAC feature bit 2021-11-18 19:16:58 +01:00
vfio
vhost
video video: fbdev: chipsfb: use memset_io() instead of memset() 2021-11-18 19:16:51 +01:00
virt
virtio virtio_ring: check desc == NULL when using indirect with packed 2021-11-18 19:16:58 +01:00
visorbus
vlynq
vme
w1
watchdog ar7: fix kernel builds for compiler test 2021-11-18 19:17:03 +01:00
xen xen-pciback: Fix return in pm_ctrl_init() 2021-11-18 19:17:05 +01:00
zorro
Kconfig
Makefile