Use smaller 512 byte messages for portmapper messages
authorMustafa Ismail <mustafa.ismail@intel.com>
Mon, 18 Jul 2016 19:21:49 +0000 (14:21 -0500)
committerDoug Ledford <dledford@redhat.com>
Thu, 4 Aug 2016 01:03:33 +0000 (21:03 -0400)
Portmapper messages are short and do not occupy more than 512 bytes.
Lower portmapper message size to 512 bytes. This change significantly
reduces the amount of memory needed when trying to establish a large
number of connections simultaneously. The old value is based on page
size.

Signed-off-by: Faisal Latif <faisal.latif@intel.com>
Signed-off-by: Mustafa Ismail <mustafa.ismail@intel.com>
Signed-off-by: Shiraz Saleem <shiraz.saleem@intel.com>
Reviewed-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/core/iwpm_util.c

index b65e06c560d7ddafa8c53292a5f6e36c917a9244..ade71e7f01313b7634a074885a3900dea087425b 100644 (file)
@@ -37,6 +37,7 @@
 #define IWPM_MAPINFO_HASH_MASK (IWPM_MAPINFO_HASH_SIZE - 1)
 #define IWPM_REMINFO_HASH_SIZE 64
 #define IWPM_REMINFO_HASH_MASK (IWPM_REMINFO_HASH_SIZE - 1)
+#define IWPM_MSG_SIZE          512
 
 static LIST_HEAD(iwpm_nlmsg_req_list);
 static DEFINE_SPINLOCK(iwpm_nlmsg_req_lock);
@@ -452,7 +453,7 @@ struct sk_buff *iwpm_create_nlmsg(u32 nl_op, struct nlmsghdr **nlh,
 {
        struct sk_buff *skb = NULL;
 
-       skb = dev_alloc_skb(NLMSG_GOODSIZE);
+       skb = dev_alloc_skb(IWPM_MSG_SIZE);
        if (!skb) {
                pr_err("%s Unable to allocate skb\n", __func__);
                goto create_nlmsg_exit;