summaryrefslogtreecommitdiffstats
path: root/net/smc
diff options
context:
space:
mode:
authorUrsula Braun <ubraun@linux.ibm.com>2019-02-21 12:56:54 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-03-19 13:12:41 +0100
commitf56b3c297ca71eb780b7c5508532b9675f650355 (patch)
treec81845ae6360d77107c56a0d800fe2943e2be5dc /net/smc
parent795cb33c32d25c0e66c608fce67766de0a0838c7 (diff)
downloadlinux-stable-f56b3c297ca71eb780b7c5508532b9675f650355.tar.gz
linux-stable-f56b3c297ca71eb780b7c5508532b9675f650355.tar.bz2
linux-stable-f56b3c297ca71eb780b7c5508532b9675f650355.zip
net/smc: fix smc_poll in SMC_INIT state
[ Upstream commit d7cf4a3bf3a83c977a29055e1c4ffada7697b31f ] smc_poll() returns with mask bit EPOLLPRI if the connection urg_state is SMC_URG_VALID. Since SMC_URG_VALID is zero, smc_poll signals EPOLLPRI errorneously if called in state SMC_INIT before the connection is created, for instance in a non-blocking connect scenario. This patch switches to non-zero values for the urg states. Reviewed-by: Karsten Graul <kgraul@linux.ibm.com> Fixes: de8474eb9d50 ("net/smc: urgent data support") Signed-off-by: Ursula Braun <ubraun@linux.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/smc')
-rw-r--r--net/smc/smc.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/net/smc/smc.h b/net/smc/smc.h
index 5721416d0605..adbdf195eb08 100644
--- a/net/smc/smc.h
+++ b/net/smc/smc.h
@@ -113,9 +113,9 @@ struct smc_host_cdc_msg { /* Connection Data Control message */
} __aligned(8);
enum smc_urg_state {
- SMC_URG_VALID, /* data present */
- SMC_URG_NOTYET, /* data pending */
- SMC_URG_READ /* data was already read */
+ SMC_URG_VALID = 1, /* data present */
+ SMC_URG_NOTYET = 2, /* data pending */
+ SMC_URG_READ = 3, /* data was already read */
};
struct smc_connection {