Module Name: src Committed By: palle Date: Fri Jun 25 19:10:50 UTC 2021
Modified Files: src/sys/arch/sparc64/dev: vdsk.c Log Message: sun4v: vdsk - restart the ldc state machine when the ldc endpoint resets the link or a DATA/NACK/DRING_DATA message is received. These changes make the driver more robust. In a ldom with Solaris 11.4 SRU30 as primary domain (T5 host system) frequent resets and NACK messages are observed. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/sys/arch/sparc64/dev/vdsk.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/arch/sparc64/dev/vdsk.c diff -u src/sys/arch/sparc64/dev/vdsk.c:1.6 src/sys/arch/sparc64/dev/vdsk.c:1.7 --- src/sys/arch/sparc64/dev/vdsk.c:1.6 Sat Apr 24 23:36:49 2021 +++ src/sys/arch/sparc64/dev/vdsk.c Fri Jun 25 19:10:50 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: vdsk.c,v 1.6 2021/04/24 23:36:49 thorpej Exp $ */ +/* $NetBSD: vdsk.c,v 1.7 2021/06/25 19:10:50 palle Exp $ */ /* $OpenBSD: vdsk.c,v 1.46 2015/01/25 21:42:13 kettenis Exp $ */ /* * Copyright (c) 2009, 2011 Mark Kettenis @@ -492,6 +492,7 @@ vdsk_rx_intr(void *arg) break; case LDC_CHANNEL_RESET: DPRINTF(("Rx link reset\n")); + ldc_send_vers(lc); break; } lc->lc_rx_state = rx_state; @@ -773,6 +774,8 @@ vdsk_rx_vio_dring_data(struct vdsk_softc case VIO_SUBTYPE_NACK: DPRINTF(("DATA/NACK/DRING_DATA\n")); + struct ldc_conn *lc = &sc->sc_lc; + ldc_send_vers(lc); break; default: