summaryrefslogtreecommitdiff
path: root/net/rds/af_rds.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2016-11-17 21:35:19 +0300
committerDavid S. Miller <davem@davemloft.net>2016-11-17 21:35:19 +0300
commitfcd2b0da730fab9b125296e859716c9652614721 (patch)
tree234b4827c3c99e6d911bd4b7ea787a1185e695df /net/rds/af_rds.c
parentb3e51069627e2b9439757590d7b82be0d22c7779 (diff)
parent1a0e100fb2c9667cea2a7d755faaa83569942f05 (diff)
downloadlinux-fcd2b0da730fab9b125296e859716c9652614721.tar.xz
Merge branch 'rds-ha-failover-fixes'
Sowmini Varadhan says: ==================== RDS: TCP: HA/Failover fixes This series contains a set of fixes for bugs exposed when we ran the following in a loop between a test machine pair: while (1); do # modprobe rds-tcp on test nodes # run rds-stress in bi-dir mode between test machine pair # modprobe -r rds-tcp on test nodes done rds-stress in bi-dir mode will cause both nodes to initiate RDS-TCP connections at almost the same instant, exposing the bugs fixed in this series. Without the fixes, rds-stress reports sporadic packet drops, and packets arriving out of sequence. After the fixes,we have been able to run the test overnight, without any issues. Each patch has a detailed description of the root-cause fixed by the patch. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/rds/af_rds.c')
-rw-r--r--net/rds/af_rds.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/net/rds/af_rds.c b/net/rds/af_rds.c
index 6beaeb1138f3..2ac1e6194be3 100644
--- a/net/rds/af_rds.c
+++ b/net/rds/af_rds.c
@@ -605,10 +605,14 @@ static void rds_exit(void)
}
module_exit(rds_exit);
+u32 rds_gen_num;
+
static int rds_init(void)
{
int ret;
+ net_get_random_once(&rds_gen_num, sizeof(rds_gen_num));
+
ret = rds_bind_lock_init();
if (ret)
goto out;