Skip to content

Conversation

kerneltoast
Copy link
Collaborator

jira LE-3546

commit-author Dexuan Cui <[email protected]>
commit b2f966568faaad326de97481096d0f3dc0971c43

Currently storvsc_timeout is only used in storvsc_sdev_configure(), and 5s and 10s are used elsewhere. It turns out that rarely the 5s is not enough on Azure, so let's use storvsc_timeout everywhere.

In case a timeout happens and storvsc_channel_init() returns an error, close the VMBus channel so that any host-to-guest messages in the channel's ringbuffer, which might come late, can be safely ignored.

Add a "const" to storvsc_timeout.

	Cc: [email protected]
	Signed-off-by: Dexuan Cui <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Reviewed-by: Long Li <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit b2f966568faaad326de97481096d0f3dc0971c43)
	Signed-off-by: Sultan Alsawaf <[email protected]>

Build log

/home/rocky/kernel-src-tree
Running make mrproper...
[TIMER]{MRPROPER}: 3s
x86_64 architecture detected, copying config
'configs/kernel-x86_64-rhel.config' -> '.config'
Setting Local Version for build
CONFIG_LOCALVERSION="-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d"
Making olddefconfig
  HOSTCC  scripts/basic/fixdep
  HOSTCC  scripts/kconfig/conf.o
  HOSTCC  scripts/kconfig/confdata.o
  HOSTCC  scripts/kconfig/expr.o
  LEX     scripts/kconfig/lexer.lex.c
  YACC    scripts/kconfig/parser.tab.[ch]
  HOSTCC  scripts/kconfig/lexer.lex.o
  HOSTCC  scripts/kconfig/menu.o
  HOSTCC  scripts/kconfig/parser.tab.o
  HOSTCC  scripts/kconfig/preprocess.o
  HOSTCC  scripts/kconfig/symbol.o
  HOSTCC  scripts/kconfig/util.o
  HOSTLD  scripts/kconfig/conf
#
# configuration written to .config
#
Starting Build
  GEN     arch/x86/include/generated/asm/orc_hash.h
  WRAP    arch/x86/include/generated/uapi/asm/bpf_perf_event.h
  WRAP    arch/x86/include/generated/uapi/asm/errno.h
  WRAP    arch/x86/include/generated/uapi/asm/fcntl.h
  WRAP    arch/x86/include/generated/uapi/asm/ioctl.h
  WRAP    arch/x86/include/generated/uapi/asm/ioctls.h
  WRAP    arch/x86/include/generated/uapi/asm/ipcbuf.h
  WRAP    arch/x86/include/generated/uapi/asm/param.h
  WRAP    arch/x86/include/generated/uapi/asm/poll.h
  WRAP    arch/x86/include/generated/uapi/asm/socket.h
  WRAP    arch/x86/include/generated/uapi/asm/resource.h
  WRAP    arch/x86/include/generated/uapi/asm/sockios.h
  WRAP    arch/x86/include/generated/uapi/asm/termbits.h
  SYSHDR  arch/x86/include/generated/uapi/asm/unistd_32.h
---
  BTF [M] net/vmw_vsock/vsock_loopback.ko
  BTF [M] net/qrtr/qrtr-mhi.ko
  BTF [M] net/qrtr/qrtr.ko
  BTF [M] net/hsr/hsr.ko
[TIMER]{BUILD}: 1656s
Making Modules
  SYMLINK /lib/modules/6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+/build
  INSTALL /lib/modules/6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+/modules.order
  INSTALL /lib/modules/6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+/modules.builtin
  INSTALL /lib/modules/6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+/modules.builtin.modinfo
  INSTALL /lib/modules/6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+/kernel/arch/x86/events/amd/power.ko
---
  SIGN    /lib/modules/6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+/kernel/net/qrtr/qrtr-mhi.ko
  SIGN    /lib/modules/6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+/kernel/net/qrtr/qrtr.ko
  SIGN    /lib/modules/6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+/kernel/net/hsr/hsr.ko
  DEPMOD  /lib/modules/6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+
[TIMER]{MODULES}: 9s
Making Install
  INSTALL /boot
[TIMER]{INSTALL}: 35s
Checking kABI
kABI check passed
Setting Default Kernel to /boot/vmlinuz-6.12.0-sultan_LE-3543_sig-cloud-10_6.12.0-55.27.1.el10_0-31d+ and Index to 0
Hopefully Grub2.0 took everything ... rebooting after time metrices
[TIMER]{MRPROPER}: 3s
[TIMER]{BUILD}: 1656s
[TIMER]{MODULES}: 9s
[TIMER]{INSTALL}: 35s
[TIMER]{TOTAL} 1707s
Rebooting in 10 seconds

kernel-build.log

Testing

$ grep ok <(diff -adU0 <(grep ^ok kselftest-before.log | sort) <(grep ^ok kselftest-after.log | sort))
+ok 15 selftests: net: bind_wildcard
+ok 1 selftests: filesystems: devpts_pts # SKIP
+ok 1 selftests: livepatch: test-livepatch.sh # SKIP
-ok 1 selftests: tty: tty_tstamp_update
+ok 2 selftests: livepatch: test-callbacks.sh # SKIP
+ok 3 selftests: livepatch: test-shadow-vars.sh # SKIP
+ok 4 selftests: livepatch: test-state.sh # SKIP
+ok 5 selftests: livepatch: test-ftrace.sh # SKIP
+ok 6 selftests: livepatch: test-sysfs.sh # SKIP
+ok 6 selftests: timers: inconsistency-check
-ok 79 selftests: kvm: rseq_test
+ok 7 selftests: livepatch: test-syscall.sh # SKIP

kselftest-before.log
kselftest-after.log

jira LE-3546
commit-author Dexuan Cui <[email protected]>
commit b2f9665

Currently storvsc_timeout is only used in storvsc_sdev_configure(), and
5s and 10s are used elsewhere. It turns out that rarely the 5s is not
enough on Azure, so let's use storvsc_timeout everywhere.

In case a timeout happens and storvsc_channel_init() returns an error,
close the VMBus channel so that any host-to-guest messages in the
channel's ringbuffer, which might come late, can be safely ignored.

Add a "const" to storvsc_timeout.

	Cc: [email protected]
	Signed-off-by: Dexuan Cui <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
	Reviewed-by: Long Li <[email protected]>
	Signed-off-by: Martin K. Petersen <[email protected]>
(cherry picked from commit b2f9665)
	Signed-off-by: Sultan Alsawaf <[email protected]>
@kerneltoast kerneltoast changed the title scsi: storvsc: Increase the timeouts to storvsc_timeout [LE-3546] scsi: storvsc: Increase the timeouts to storvsc_timeout Aug 26, 2025
Copy link
Collaborator

@bmastbergen bmastbergen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🥌

Copy link

@thefossguy-ciq thefossguy-ciq left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🚤

@kerneltoast kerneltoast merged commit 31d6b1e into sig-cloud-10/6.12.0-55.27.1.el10_0 Aug 27, 2025
4 checks passed
@kerneltoast kerneltoast deleted the sultan_LE-3543_sig-cloud-10/6.12.0-55.27.1.el10_0 branch August 27, 2025 16:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants