summaryrefslogtreecommitdiffstats
path: root/arch/um/drivers/vector_kern.h
diff options
context:
space:
mode:
authorAnton Ivanov <anton.ivanov@cambridgegreys.com>2019-08-09 08:40:20 +0100
committerRichard Weinberger <richard@nod.at>2019-09-15 21:37:09 +0200
commitd47761db97d35cd7fc194e4472b3a20a46f64dc7 (patch)
tree6791c0f43eac53173b460e652453602ca7a44c23 /arch/um/drivers/vector_kern.h
parent5853193103e6e3be983cc86d61b204ed27a22716 (diff)
downloadlinux-stable-d47761db97d35cd7fc194e4472b3a20a46f64dc7.tar.gz
linux-stable-d47761db97d35cd7fc194e4472b3a20a46f64dc7.tar.bz2
linux-stable-d47761db97d35cd7fc194e4472b3a20a46f64dc7.zip
um: Error handling fixes in vector drivers
With the addition of bess support which uses connection oriented SEQPACKET sockets the vector routines can now encounter a "remote end closed the connection" scenario. This adds handling code to detect it in the TX path and the legacy RX path. There is no way to detect it in the vector RX path because that can legitimately return 0 even if the remote end has not closed the connection. As a result the detection is delayed until the first TX event after the close. Signed-off-by: Anton Ivanov <anton.ivanov@cambridgegreys.com> Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'arch/um/drivers/vector_kern.h')
-rw-r--r--arch/um/drivers/vector_kern.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/um/drivers/vector_kern.h b/arch/um/drivers/vector_kern.h
index 0b0a767b9076..684d2e60ad86 100644
--- a/arch/um/drivers/vector_kern.h
+++ b/arch/um/drivers/vector_kern.h
@@ -116,6 +116,7 @@ struct vector_private {
bool rexmit_scheduled;
bool opened;
bool in_write_poll;
+ bool in_error;
/* ethtool stats */