From dcf966dc27ea2dff709abcc59a663fc9ecdea72a Mon Sep 17 00:00:00 2001 From: Avinash Repaka Date: Mon, 13 Feb 2017 19:53:13 -0800 Subject: [PATCH] Revert "RDS: Make message size limit compliant with spec" This change *partially* reverts commit 3a0891b9a49e42d05519a2f8b33c86267eb63d35 This partial revert is needed due to regression with some RDS applications. It reverts RDS message size limit changes but retains the QOS related changes in the data send path. Orabug: 25472193 Tested-by: Efrain Galaviz Signed-off-by: Avinash Repaka Reviewed-by: Ajaykumar Hotchandani --- net/rds/rdma.c | 10 +--------- net/rds/rds.h | 3 --- net/rds/send.c | 5 ----- 3 files changed, 1 insertion(+), 17 deletions(-) diff --git a/net/rds/rdma.c b/net/rds/rdma.c index 9fe3bc342ef5..37b99465ab77 100644 --- a/net/rds/rdma.c +++ b/net/rds/rdma.c @@ -39,6 +39,7 @@ /* * XXX * - build with sparse + * - should we limit the size of a mr region? let transport return failure? * - should we detect duplicate keys on a socket? hmm. * - an rdma is an mlock, apply rlimit? */ @@ -199,15 +200,6 @@ static int __rds_rdma_map(struct rds_sock *rs, struct rds_get_mr_args *args, goto out; } - /* - * we restrict the size of mr irrespective of underlying transport - * To account for unaligned mr regions, we subtract one from nr_pages - */ - if ((nr_pages - 1) > (RDS_MAX_MSG_SIZE >> PAGE_SHIFT)) { - ret = -EMSGSIZE; - goto out; - } - rdsdebug("RDS: get_mr addr %llx len %llu nr_pages %u\n", args->vec.addr, args->vec.bytes, nr_pages); diff --git a/net/rds/rds.h b/net/rds/rds.h index 4f1012c89363..abfa291c0296 100644 --- a/net/rds/rds.h +++ b/net/rds/rds.h @@ -99,9 +99,6 @@ enum { #define RDS_FRAG_SIZE ((unsigned int)(1 << RDS_FRAG_SHIFT)) #define RDS_MAX_FRAG_SIZE SZ_16K -/* Used to limit both RDMA and non-RDMA RDS message to 1MB */ -#define RDS_MAX_MSG_SIZE ((unsigned int)(1 << 20)) - #define RDS_CONG_MAP_BYTES (65536 / 8) #define RDS_CONG_PAGE_SIZE (1UL << 12) #define RDS_CONG_MAP_LONGS (RDS_CONG_MAP_BYTES / sizeof(unsigned long)) diff --git a/net/rds/send.c b/net/rds/send.c index cb90d3beda14..dcc17db88272 100644 --- a/net/rds/send.c +++ b/net/rds/send.c @@ -1245,11 +1245,6 @@ int rds_sendmsg(struct socket *sock, struct msghdr *msg, size_t payload_len) if (ret) goto out; - if (max_t(size_t, payload_len, rdma_payload_len) > RDS_MAX_MSG_SIZE) { - ret = -EMSGSIZE; - goto out; - } - if (payload_len > rds_sk_sndbuf(rs)) { ret = -EMSGSIZE; goto out; -- 2.50.1