All of lore.kernel.org
 help / color / mirror / Atom feed
From: Parav Pandit <pandit.parav@gmail.com>
To: cgroups@vger.kernel.org, linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-rdma@vger.kernel.org,
	tj@kernel.org, lizefan@huawei.com, hannes@cmpxchg.org,
	dledford@redhat.com, hch@lst.de, liranl@mellanox.com,
	sean.hefty@intel.com, jgunthorpe@obsidianresearch.com,
	haggaie@mellanox.com
Cc: corbet@lwn.net, james.l.morris@oracle.com, serge@hallyn.com,
	ogerlitz@mellanox.com, matanb@mellanox.com,
	akpm@linux-foundation.org, linux-security-module@vger.kernel.org,
	pandit.parav@gmail.com
Subject: [PATCHv12 2/3] IB/core: added support to use rdma cgroup controller
Date: Wed, 31 Aug 2016 14:07:26 +0530	[thread overview]
Message-ID: <1472632647-1525-3-git-send-email-pandit.parav@gmail.com> (raw)
In-Reply-To: <1472632647-1525-1-git-send-email-pandit.parav@gmail.com>

Added support APIs for IB core to register/unregister every IB/RDMA
device with rdma cgroup for tracking verbs and hw resources.
IB core registers with rdma cgroup controller.
Added support APIs for uverbs layer to make use of rdma controller.
Added uverbs layer to perform resource charge/uncharge functionality.
Added support during query_device uverb operation to ensure it
returns resource limits by honoring rdma cgroup configured limits.

Signed-off-by: Parav Pandit <pandit.parav@gmail.com>
---
 drivers/infiniband/core/Makefile    |  1 +
 drivers/infiniband/core/cgroup.c    | 93 +++++++++++++++++++++++++++++++++++++
 drivers/infiniband/core/core_priv.h | 41 ++++++++++++++++
 drivers/infiniband/core/device.c    | 10 ++++
 4 files changed, 145 insertions(+)
 create mode 100644 drivers/infiniband/core/cgroup.c

diff --git a/drivers/infiniband/core/Makefile b/drivers/infiniband/core/Makefile
index edaae9f..e426ac8 100644
--- a/drivers/infiniband/core/Makefile
+++ b/drivers/infiniband/core/Makefile
@@ -13,6 +13,7 @@ ib_core-y :=			packer.o ud_header.o verbs.o cq.o rw.o sysfs.o \
 				multicast.o mad.o smi.o agent.o mad_rmpp.o
 ib_core-$(CONFIG_INFINIBAND_USER_MEM) += umem.o
 ib_core-$(CONFIG_INFINIBAND_ON_DEMAND_PAGING) += umem_odp.o umem_rbtree.o
+ib_core-$(CONFIG_CGROUP_RDMA) += cgroup.o
 
 ib_cm-y :=			cm.o
 
diff --git a/drivers/infiniband/core/cgroup.c b/drivers/infiniband/core/cgroup.c
new file mode 100644
index 0000000..ffe7234
--- /dev/null
+++ b/drivers/infiniband/core/cgroup.c
@@ -0,0 +1,93 @@
+/*
+ * Copyright (C) 2016 Parav Pandit <pandit.parav@gmail.com>
+ *
+ * This software is available to you under a choice of one of two
+ * licenses.  You may choose to be licensed under the terms of the GNU
+ * General Public License (GPL) Version 2, available from the file
+ * COPYING in the main directory of this source tree, or the
+ * OpenIB.org BSD license below:
+ *
+ *     Redistribution and use in source and binary forms, with or
+ *     without modification, are permitted provided that the following
+ *     conditions are met:
+ *
+ *      - Redistributions of source code must retain the above
+ *        copyright notice, this list of conditions and the following
+ *        disclaimer.
+ *
+ *      - Redistributions in binary form must reproduce the above
+ *        copyright notice, this list of conditions and the following
+ *        disclaimer in the documentation and/or other materials
+ *        provided with the distribution.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+ * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
+ * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+#include "core_priv.h"
+
+/*
+ * resource table definition as to be seen by the user.
+ * Need to add entries to it when more resources are
+ * added/defined at IB verb/core layer.
+ */
+
+/**
+ * ib_device_register_rdmacg - register with rdma cgroup.
+ * @device: device to register to participate in resource
+ *          accounting by rdma cgroup.
+ *
+ * Register with the rdma cgroup. Should be called before
+ * exposing rdma device to user space applications to avoid
+ * resource accounting leak.
+ * Returns 0 on success or otherwise failure code.
+ */
+int ib_device_register_rdmacg(struct ib_device *device)
+{
+	device->cg_device.name = device->name;
+	return rdmacg_register_device(&device->cg_device);
+}
+
+/**
+ * ib_device_unregister_rdmacg - unregister with rdma cgroup.
+ * @device: device to unregister.
+ *
+ * Unregister with the rdma cgroup. Should be called after
+ * all the resources are deallocated, and after a stage when any
+ * other resource allocation by user application cannot be done
+ * for this device to avoid any leak in accounting.
+ */
+void ib_device_unregister_rdmacg(struct ib_device *device)
+{
+	rdmacg_unregister_device(&device->cg_device);
+}
+
+int ib_rdmacg_try_charge(struct ib_rdmacg_object *cg_obj,
+			 struct ib_device *device,
+			 enum rdmacg_resource_type resource_index)
+{
+	return rdmacg_try_charge(&cg_obj->cg, &device->cg_device,
+				 resource_index);
+}
+EXPORT_SYMBOL(ib_rdmacg_try_charge);
+
+void ib_rdmacg_uncharge(struct ib_rdmacg_object *cg_obj,
+			struct ib_device *device,
+			enum rdmacg_resource_type resource_index)
+{
+	rdmacg_uncharge(cg_obj->cg, &device->cg_device,
+			resource_index);
+}
+EXPORT_SYMBOL(ib_rdmacg_uncharge);
+
+void ib_rdmacg_query_limit(struct ib_device *device, int *limits)
+{
+	rdmacg_query_limit(&device->cg_device, limits);
+}
+EXPORT_SYMBOL(ib_rdmacg_query_limit);
diff --git a/drivers/infiniband/core/core_priv.h b/drivers/infiniband/core/core_priv.h
index 19d499d..d1e432e 100644
--- a/drivers/infiniband/core/core_priv.h
+++ b/drivers/infiniband/core/core_priv.h
@@ -35,6 +35,7 @@
 
 #include <linux/list.h>
 #include <linux/spinlock.h>
+#include <linux/cgroup_rdma.h>
 
 #include <rdma/ib_verbs.h>
 
@@ -124,6 +125,46 @@ int ib_cache_setup_one(struct ib_device *device);
 void ib_cache_cleanup_one(struct ib_device *device);
 void ib_cache_release_one(struct ib_device *device);
 
+#ifdef CONFIG_CGROUP_RDMA
+int ib_device_register_rdmacg(struct ib_device *device);
+void ib_device_unregister_rdmacg(struct ib_device *device);
+
+int ib_rdmacg_try_charge(struct ib_rdmacg_object *cg_obj,
+			 struct ib_device *device,
+			 enum rdmacg_resource_type resource_index);
+
+void ib_rdmacg_uncharge(struct ib_rdmacg_object *cg_obj,
+			struct ib_device *device,
+			enum rdmacg_resource_type resource_index);
+
+void ib_rdmacg_query_limit(struct ib_device *device, int *limits);
+#else
+static inline int ib_device_register_rdmacg(struct ib_device *device)
+{ return 0; }
+
+static inline void ib_device_unregister_rdmacg(struct ib_device *device)
+{ }
+
+static inline int ib_rdmacg_try_charge(struct ib_rdmacg_object *cg_obj,
+				       struct ib_device *device,
+				       enum rdmacg_resource_type resource_index)
+{ return 0; }
+
+static inline void ib_rdmacg_uncharge(struct ib_rdmacg_object *cg_obj,
+				      struct ib_device *device,
+				      enum rdmacg_resource_type resource_index)
+{ }
+
+static inline void ib_rdmacg_query_limit(struct ib_device *device,
+					 int *limits)
+{
+	int i;
+
+	for (i = 0; i < RDMACG_RESOURCE_MAX; i++)
+		limits[i] = S32_MAX;
+}
+#endif
+
 static inline bool rdma_is_upper_dev_rcu(struct net_device *dev,
 					 struct net_device *upper)
 {
diff --git a/drivers/infiniband/core/device.c b/drivers/infiniband/core/device.c
index 760ef60..08e3259 100644
--- a/drivers/infiniband/core/device.c
+++ b/drivers/infiniband/core/device.c
@@ -363,10 +363,18 @@ int ib_register_device(struct ib_device *device,
 		goto out;
 	}
 
+	ret = ib_device_register_rdmacg(device);
+	if (ret) {
+		pr_warn("Couldn't register device with rdma cgroup\n");
+		ib_cache_cleanup_one(device);
+		goto out;
+	}
+
 	memset(&device->attrs, 0, sizeof(device->attrs));
 	ret = device->query_device(device, &device->attrs, &uhw);
 	if (ret) {
 		pr_warn("Couldn't query the device attributes\n");
+		ib_device_unregister_rdmacg(device);
 		ib_cache_cleanup_one(device);
 		goto out;
 	}
@@ -375,6 +383,7 @@ int ib_register_device(struct ib_device *device,
 	if (ret) {
 		pr_warn("Couldn't register device %s with driver model\n",
 			device->name);
+		ib_device_unregister_rdmacg(device);
 		ib_cache_cleanup_one(device);
 		goto out;
 	}
@@ -424,6 +433,7 @@ void ib_unregister_device(struct ib_device *device)
 
 	mutex_unlock(&device_mutex);
 
+	ib_device_unregister_rdmacg(device);
 	ib_device_unregister_sysfs(device);
 	ib_cache_cleanup_one(device);
 
-- 
1.8.3.1

  parent reply	other threads:[~2016-08-31  8:37 UTC|newest]

Thread overview: 112+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-31  8:37 [PATCHv12 0/3] rdmacg: IB/core: rdma controller support Parav Pandit
2016-08-31  8:37 ` [PATCHv12 1/3] rdmacg: Added rdma cgroup controller Parav Pandit
2016-08-31  9:38   ` Leon Romanovsky
2016-09-07 15:07     ` Parav Pandit
2016-09-08  6:12       ` Leon Romanovsky
2016-09-08 10:20         ` Parav Pandit
2016-09-08 10:20           ` Parav Pandit
2016-08-31 15:07   ` Matan Barak
2016-08-31 15:07     ` Matan Barak
2016-08-31 21:16     ` Tejun Heo
     [not found]       ` <20160831211618.GA12660-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2016-09-01  7:25         ` Matan Barak
2016-09-01  7:25           ` Matan Barak
2016-09-01  8:44           ` Christoph Hellwig
     [not found]             ` <20160901084406.GA4115-jcswGhMUV9g@public.gmane.org>
2016-09-07  7:55               ` Parav Pandit
2016-09-07  7:55                 ` Parav Pandit
2016-09-07  8:51                 ` Matan Barak
2016-09-07  8:51                   ` Matan Barak
2016-09-07 14:54                   ` Parav Pandit
     [not found]                   ` <ae3adcc4-253e-f87c-6ff6-202c91599f48-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2016-09-10 16:14                     ` Christoph Hellwig
2016-09-10 16:14                       ` Christoph Hellwig
2016-09-10 17:01                       ` Jason Gunthorpe
     [not found]                         ` <20160910170151.GA5230-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-09-11  8:07                           ` Matan Barak
2016-09-11  8:07                             ` Matan Barak
2016-09-11 13:34                         ` Christoph Hellwig
2016-09-11 14:35                           ` Leon Romanovsky
2016-09-11 17:14                             ` Jason Gunthorpe
2016-09-11 17:24                               ` Christoph Hellwig
2016-09-11 17:52                                 ` Jason Gunthorpe
     [not found]                                   ` <20160911175235.GB13442-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2016-09-12  5:07                                     ` Leon Romanovsky
2016-09-12  5:07                                       ` Leon Romanovsky
     [not found]                                       ` <20160912050717.GE8812-2ukJVAZIZ/Y@public.gmane.org>
2016-09-14  7:06                                         ` Parav Pandit
2016-09-14  7:06                                           ` Parav Pandit
2016-09-14  8:14                                           ` Matan Barak
2016-09-14  8:14                                             ` Matan Barak
     [not found]                                             ` <13a00119-e629-2d34-d08b-c02bb6beceea-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2016-09-14  9:19                                               ` Parav Pandit
2016-09-14  9:19                                                 ` Parav Pandit
     [not found]                                           ` <CAG53R5X4stfy5+Jmg+XReUJqt56Z-zABK+UEswHW1dXhH-9cNw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-09-15 18:56                                             ` Leon Romanovsky
2016-09-15 18:56                                               ` Leon Romanovsky
2016-09-21  4:43                                               ` Parav Pandit
2016-09-21 14:26                                                 ` Tejun Heo
     [not found]                                                   ` <20160921142645.GB10734-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2016-09-21 16:02                                                     ` Parav Pandit
2016-09-21 16:02                                                       ` Parav Pandit
     [not found]                                                       ` <CAG53R5WMuojhzFGmqk6nHfypd9Hq4dGsWRKjtUyMZ=RezU-LhQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-04 18:19                                                         ` Parav Pandit
2016-10-04 18:19                                                           ` Parav Pandit
2016-10-04 18:19                                                           ` Parav Pandit
2016-10-05  6:37                                                           ` Christoph Hellwig
2016-10-05 11:22                                                             ` Leon Romanovsky
2016-10-05 15:36                                                               ` Tejun Heo
     [not found]                                                             ` <20161005063735.GC3086-jcswGhMUV9g@public.gmane.org>
2016-10-06 12:55                                                               ` Parav Pandit
2016-10-06 12:55                                                                 ` Parav Pandit
2016-10-18 20:15                                                           ` Parav Pandit
2016-09-19 13:10                                             ` Dalessandro, Dennis
2016-09-19 13:10                                               ` Dalessandro, Dennis
2016-09-19 17:00                                               ` Parav Pandit
2016-09-19 17:00                                                 ` Parav Pandit
     [not found]                 ` <CAG53R5Ws4BJKqeEYfEoEx5kuaXUmhDKcXfH4Vx=LTMK6tKMG0A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-09-10 16:12                   ` Christoph Hellwig
2016-09-10 16:12                     ` Christoph Hellwig
     [not found]                     ` <20160910161228.GB29259-jcswGhMUV9g@public.gmane.org>
2016-09-11  7:40                       ` Matan Barak
2016-09-11  7:40                         ` Matan Barak
2016-08-31  8:37 ` Parav Pandit [this message]
     [not found] ` <1472632647-1525-1-git-send-email-pandit.parav-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-08-31  8:37   ` [PATCHv12 3/3] rdmacg: Added documentation for rdmacg Parav Pandit
2016-08-31  8:37     ` Parav Pandit
2016-08-31 13:56   ` [PATCHv12 0/3] rdmacg: IB/core: rdma controller support Tejun Heo
2016-08-31 13:56     ` Tejun Heo
2016-10-05 11:22 ` Leon Romanovsky
     [not found]   ` <20161005112206.GC9282-2ukJVAZIZ/Y@public.gmane.org>
2016-10-06 12:59     ` Parav Pandit
2016-10-06 12:59       ` Parav Pandit
2016-10-06 13:49     ` Parav Pandit
     [not found]       ` <CAG53R5VNVb=8-LJbDRqjtOZG347ucPuc420bcfnDgBKMoKqU-w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-10  4:46         ` Leon Romanovsky
     [not found]           ` <20161010044623.GI9282-2ukJVAZIZ/Y@public.gmane.org>
2016-10-10  6:29             ` Parav Pandit
     [not found]               ` <CAG53R5UM6nSTZ7=0S9reKGX45CpNBi8soSDVZyXkN-z0_XXWWQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-10  7:33                 ` Leon Romanovsky
     [not found]                   ` <20161010073343.GK9282-2ukJVAZIZ/Y@public.gmane.org>
2016-10-10  8:35                     ` Parav Pandit
     [not found]                       ` <CAG53R5WeWSrJ5-Gtt-cXpUr0r73zh3bqQM_G5zTue27tPtVEXA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-10  8:52                         ` Leon Romanovsky
     [not found]                           ` <20161010085241.GL9282-2ukJVAZIZ/Y@public.gmane.org>
2016-10-10  9:22                             ` Parav Pandit
2016-10-10 12:25                 ` Tejun Heo
     [not found]                   ` <20161010122545.GA27360-qYNAdHglDFBN0TnZuCh8vA@public.gmane.org>
2016-10-10 13:13                     ` Parav Pandit
     [not found]                       ` <CAG53R5V5yE4PsDBjP9BieG_=39M0G1kx-AfBEzWK4LUCxNnYBA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-10 13:20                         ` Tejun Heo
     [not found]                           ` <20161010132014.GD29742-qYNAdHglDFBN0TnZuCh8vA@public.gmane.org>
2016-10-10 13:32                             ` Parav Pandit
     [not found]                               ` <CAG53R5ULKCqtw45E6t4hYdRV+y_OQqVazf=7A7Ax_XAJ2K0_dw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-13 10:34                                 ` Leon Romanovsky
     [not found]                                   ` <20161013103430.GB9282-2ukJVAZIZ/Y@public.gmane.org>
2016-10-13 11:04                                     ` Parav Pandit
2016-10-13 23:14                                 ` Tejun Heo
     [not found]                                   ` <20161013231413.GA32534-qYNAdHglDFBN0TnZuCh8vA@public.gmane.org>
2016-10-18 20:02                                     ` Parav Pandit
     [not found]                                       ` <CAG53R5UciPpa5d8BWyR-tks3LBrBwRCN2NyBbbm1e3EE-OWSYQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-18 21:51                                         ` Tejun Heo
     [not found]                                           ` <20161018215134.GB2761-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2016-10-19  9:34                                             ` Parav Pandit
     [not found]                                               ` <CAG53R5UEvkPBM0yFrR=fvEzyCrku2q=rLZyDVrSs9q+3hgbSmQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-19 14:33                                                 ` Tejun Heo
     [not found]                                                   ` <20161019143345.GA18532-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2016-10-19 19:03                                                     ` Parav Pandit
     [not found]                                                       ` <CAG53R5WUyA7JBn=PeivUc5F5k210xf_HccPXFt3r7ZGYHOPaGA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-19 19:20                                                         ` Tejun Heo
     [not found]                                                           ` <20161019192006.GB3044-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2016-10-19 19:54                                                             ` Parav Pandit
     [not found]                                                               ` <CAG53R5X5dyo7J-UkeMxi_mSxgv=c54fV=anuCZtmf9kaYwDbPw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-19 20:05                                                                 ` Tejun Heo
     [not found]                                                                   ` <20161019200536.GC3044-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2016-10-19 20:18                                                                     ` Parav Pandit
     [not found]                                                                       ` <CAG53R5XkRKdo-SCaREZvov3AGp5MSd18RpQ+0HEu-htUzqwOOw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-10-31  6:54                                                                         ` Leon Romanovsky
     [not found]                                                                           ` <20161031065441.GY3617-2ukJVAZIZ/Y@public.gmane.org>
2016-11-01 11:03                                                                             ` Parav Pandit
     [not found]                                                                               ` <CAG53R5VKwntDHX101+5aaGoyKMKQuiKQWam575iFAxhmKxhE1g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-11-01 14:07                                                                                 ` Leon Romanovsky
     [not found]                                                                                   ` <20161101140732.GC3617-2ukJVAZIZ/Y@public.gmane.org>
2016-11-02  4:34                                                                                     ` Parav Pandit
2016-11-03 18:00                                                                                 ` Leon Romanovsky
     [not found]                                                                                   ` <20161103180006.GL3617-2ukJVAZIZ/Y@public.gmane.org>
2016-11-04  4:20                                                                                     ` Leon Romanovsky
2016-11-04  4:20                                                                                     ` Liran Liss
     [not found]                                                                                       ` <AM4PR0501MB2802030EE9E359133E04439CB1A20-dp/nxUn679jTOi/YP668sMDSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2016-11-04  4:47                                                                                         ` Parav Pandit
     [not found]                                                                                           ` <CAG53R5Vd58wEBKgAajp9VvJmB5sO2Umii0JE4XaLYKbfrJrxyg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-11-04  4:52                                                                                             ` Liran Liss
     [not found]                                                                                               ` <AM4PR0501MB2802E87F709F41DDEC20B7C9B1A20-dp/nxUn679jTOi/YP668sMDSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2016-11-04  4:57                                                                                                 ` Parav Pandit
     [not found]                                                                                                   ` <CAG53R5UyZPh9wduPZGRg2P09n2Og8oODqb+QW=7ryAPqJDa6Vw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-11-04  5:06                                                                                                     ` Liran Liss
     [not found]                                                                                                       ` <AM4PR0501MB28025BE002CBA9D04675A5A5B1A20-dp/nxUn679jTOi/YP668sMDSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2016-11-04  5:44                                                                                                         ` Parav Pandit
     [not found]                                                                                                           ` <CAG53R5WdauHpML66g-O6zj+j_DUYWJMPjmL1xDaSxwDmPPYm2A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-11-08  8:12                                                                                                             ` Liran Liss
     [not found]                                                                                                               ` <HE1PR0501MB2812298C05431B08B0F408EEB1A60-692Kmc8YnlIVrnpjwTCbp8DSnupUy6xnnBOFsp37pqbUKgpGm//BTAC/G2K4zDHf@public.gmane.org>
2016-11-10  7:41                                                                                                                 ` Parav Pandit
     [not found]                                                                                                                   ` <CAG53R5XqZwrYsdX=JQ1D4cDB0h65RDQVb=VCiaR5TXuf_uoO0Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-11-10 16:38                                                                                                                     ` Leon Romanovsky
     [not found]                                                                                                                       ` <20161110163837.GE28957-2ukJVAZIZ/Y@public.gmane.org>
2016-11-10 16:46                                                                                                                         ` Tejun Heo
     [not found]                                                                                                                           ` <20161110164638.GC26105-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2016-11-10 17:04                                                                                                                             ` Parav Pandit
     [not found]                                                                                                                               ` <CAG53R5UGfhGHc3-jgUjH5taFzTHg3BOgXi25QjuQfUFc0U7tgw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-11-10 17:32                                                                                                                                 ` Tejun Heo
     [not found]                                                                                                                                   ` <20161110173217.GD26105-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2016-11-10 17:56                                                                                                                                     ` Parav Pandit
2016-11-10 19:23                                                                                                                                       ` Tejun Heo
     [not found]                                                                                                                                         ` <20161110192344.GA4805-piEFEHQLUPpN0TnZuCh8vA@public.gmane.org>
2016-11-11 13:00                                                                                                                                           ` Parav Pandit
2016-11-04  4:28                                                                                     ` Parav Pandit

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1472632647-1525-3-git-send-email-pandit.parav@gmail.com \
    --to=pandit.parav@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=cgroups@vger.kernel.org \
    --cc=corbet@lwn.net \
    --cc=dledford@redhat.com \
    --cc=haggaie@mellanox.com \
    --cc=hannes@cmpxchg.org \
    --cc=hch@lst.de \
    --cc=james.l.morris@oracle.com \
    --cc=jgunthorpe@obsidianresearch.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=linux-security-module@vger.kernel.org \
    --cc=liranl@mellanox.com \
    --cc=lizefan@huawei.com \
    --cc=matanb@mellanox.com \
    --cc=ogerlitz@mellanox.com \
    --cc=sean.hefty@intel.com \
    --cc=serge@hallyn.com \
    --cc=tj@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.