Locking interrupt handler in L1 cache

2007-03-11 Thread Parav Pandit
is going to be called most of the time then it is very likely to happen that OS will flush the same, but there is no guarantee for it. Regards, Parav Pandit Get your own web address. Have a HUGE year through

[PATCH] NVMe: General code cleanup for reuse.

2015-05-20 Thread Parav Pandit
Moved code for reusing at few places: 1. Moved lba_shift related calculation code to macro for converting block to/from len. 2. Moved req_len to nlb calculation to inline function. Signed-off-by: Parav Pandit parav.pan...@avagotech.com --- drivers/block/nvme-core.c | 10 +- drivers

[PATCH] NVMe: nvme_queue made cache friendly.

2015-05-20 Thread Parav Pandit
of the structure. Elements which are not used in frequent IO path are moved at the end of structure. Signed-off-by: Parav Pandit parav.pan...@avagotech.com --- drivers/block/nvme-core.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/block/nvme-core.c b

Re: [PATCH] NVMe: nvme_queue made cache friendly.

2015-05-20 Thread Parav Pandit
On Wed, May 20, 2015 at 6:50 PM, Matthew Wilcox wi...@linux.intel.com wrote: On Wed, May 20, 2015 at 02:01:03PM -0400, Parav Pandit wrote: nvme_queue structure made 64B cache friendly so that majority of the data elements of the structure during IO and completion path can be found in typical

Re: [PATCHv1] NVMe: nvme_queue made cache friendly.

2015-06-02 Thread Parav Pandit
On Fri, May 22, 2015 at 10:22 AM, Parav Pandit parav.pan...@avagotech.com wrote: On Fri, May 22, 2015 at 2:15 AM, J Freyensee james_p_freyen...@linux.intel.com wrote: On Wed, 2015-05-20 at 16:43 -0400, Parav Pandit wrote: nvme_queue structure made 64B cache friendly so that majority

Re: [PATCH] NVMe: General code cleanup for reuse.

2015-06-02 Thread Parav Pandit
I am sorry. By mistake sent the same patch which was already sent few days back. Its pending for merge. On Tue, Jun 2, 2015 at 7:41 PM, Parav Pandit parav.pan...@avagotech.com wrote: From: Parav Pandit parav.pan...@avagotech.com Moved code for reusing at few places: 1. Moved lba_shift related

[PATCH] NVMe: General code cleanup for reuse.

2015-06-02 Thread Parav Pandit
From: Parav Pandit parav.pan...@avagotech.com Moved code for reusing at few places: 1. Moved lba_shift related calculation code to macro for converting block to/from len. 2. Moved req_len to nlb calculation to inline function. Signed-off-by: Parav Pandit parav.pan...@avagotech.com --- drivers

[PATCH] NVMe: code simplification and reuse.

2015-06-02 Thread Parav Pandit
From: Parav Pandit parav.pan...@avagotech.com Moved SQ doorbell pressing code to smaller function to avoid code duplication at 3 places. nvme_submit_cmd is low level posting function which never fails. Removed checks around its return status which was always success. Signed-off-by: Parav Pandit

Re: [PATCH] NVMe: Fixed race between nvme_thread probe path.

2015-06-18 Thread Parav Pandit
On Thu, Jun 18, 2015 at 9:29 PM, Jon Derrick jonathan.derr...@intel.com wrote: On Thu, Jun 18, 2015 at 04:13:50PM +0530, Parav Pandit wrote: Kernel thread nvme_thread and driver load process can be executing in parallel on different CPU. This leads to race condition whenever nvme_alloc_queue

[PATCH] NVMe: Fixed race between nvme_thread probe path.

2015-06-17 Thread Parav Pandit
that it maintains the order and and data dependency read barrier in reader thread ensures that cpu cache is synced. Signed-off-by: Parav Pandit parav.pan...@avagotech.com --- drivers/block/nvme-core.c | 12 ++-- 1 files changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/block/nvme

Re: [PATCH] NVMe: Avoid interrupt disable during queue init.

2015-05-21 Thread Parav Pandit
On Fri, May 22, 2015 at 1:04 AM, Keith Busch keith.bu...@intel.com wrote: On Thu, 21 May 2015, Parav Pandit wrote: Avoid diabling interrupt and holding q_lock for the queue which is just getting initialized. With this change, online_queues is also incremented without lock during queue setup

Re: [PATCHv1] NVMe: nvme_queue made cache friendly.

2015-05-21 Thread Parav Pandit
On Fri, May 22, 2015 at 2:15 AM, J Freyensee james_p_freyen...@linux.intel.com wrote: On Wed, 2015-05-20 at 16:43 -0400, Parav Pandit wrote: nvme_queue structure made 64B cache friendly so that majority of the data elements of the structure during IO and completion path can be found in typical

[PATCH] NVMe: Avoid interrupt disable during queue init.

2015-05-21 Thread Parav Pandit
protect device wide online_queues variable anyway. Signed-off-by: Parav Pandit parav.pan...@avagotech.com --- drivers/block/nvme-core.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/block/nvme-core.c b/drivers/block/nvme-core.c index 58041c7..7f09e5e 100644 --- a/drivers/block/nvme

Re: [PATCH] NVMe: Avoid interrupt disable during queue init.

2015-05-21 Thread Parav Pandit
On Fri, May 22, 2015 at 12:09 AM, Jens Axboe ax...@kernel.dk wrote: On 05/21/2015 06:12 PM, Parav Pandit wrote: Avoid diabling interrupt and holding q_lock for the queue which is just getting initialized. With this change, online_queues is also incremented without lock during queue setup

Re: [PATCH] NVMe: Avoid interrupt disable during queue init.

2015-05-22 Thread Parav Pandit
On Fri, May 22, 2015 at 8:18 PM, Keith Busch keith.bu...@intel.com wrote: On Thu, 21 May 2015, Parav Pandit wrote: On Fri, May 22, 2015 at 1:04 AM, Keith Busch keith.bu...@intel.com wrote: The q_lock is held to protect polling from reading inconsistent data. ah, yes. I can see

Re: [PATCH] NVMe: Avoid interrupt disable during queue init.

2015-05-22 Thread Parav Pandit
On Fri, May 22, 2015 at 8:41 PM, Keith Busch keith.bu...@intel.com wrote: On Fri, 22 May 2015, Parav Pandit wrote: On Fri, May 22, 2015 at 8:18 PM, Keith Busch keith.bu...@intel.com wrote: The rcu protection on nvme queues was removed with the blk-mq conversion as we rely on that layer

Re: [PATCH] NVMe: Avoid interrupt disable during queue init.

2015-05-22 Thread Parav Pandit
On Fri, May 22, 2015 at 9:53 PM, Keith Busch keith.bu...@intel.com wrote: On Fri, 22 May 2015, Parav Pandit wrote: During normal positive path probe, (a) device is added to dev_list in nvme_dev_start() (b) nvme_kthread got created, which will eventually refers to dev-queues[qid] to check

Re: [PATCH] NVMe: Avoid interrupt disable during queue init.

2015-05-22 Thread Parav Pandit
On Fri, May 22, 2015 at 11:17 PM, Keith Busch keith.bu...@intel.com wrote: On Fri, 22 May 2015, Parav Pandit wrote: I agree to it that nvmeq won't be null after mb(); That alone is not sufficient. What I have proposed in previous email is, Converting, struct nvme_queue *nvmeq = dev

Re: [PATCH] NVMe: Avoid interrupt disable during queue init.

2015-05-22 Thread Parav Pandit
On Fri, May 22, 2015 at 10:37 PM, Keith Busch keith.bu...@intel.com wrote: On Fri, 22 May 2015, Parav Pandit wrote: On Fri, May 22, 2015 at 9:53 PM, Keith Busch keith.bu...@intel.com wrote: A memory barrier before incrementing the dev-queue_count (and assigning the pointer in the array

[PATCHv1] NVMe: nvme_queue made cache friendly.

2015-05-20 Thread Parav Pandit
of the structure. Elements which are not used in frequent IO path are moved at the end of structure. Signed-off-by: Parav Pandit parav.pan...@avagotech.com --- drivers/block/nvme-core.c | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/block/nvme-core.c b

Re: RFC rdma cgroup

2015-10-29 Thread Parav Pandit
Hi Haggai, On Thu, Oct 29, 2015 at 8:27 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 28/10/2015 10:29, Parav Pandit wrote: >> 3. Resources are not defined by the RDMA cgroup. Resources are defined >> by RDMA/IB subsystem and optionally by HCA vendor device drivers. >

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-10-28 Thread Parav Pandit
Hi, I finally got some chance and progress on redesigning rdma cgroup controller for the most use cases that we discussed in this email chain. I am posting RFC and soon code in new email. Parav On Sun, Sep 20, 2015 at 4:05 PM, Haggai Eran wrote: > On 15/09/2015 06:45,

RFC rdma cgroup

2015-10-28 Thread Parav Pandit
I have completed initial development of above design. I am currently testing this design. I will post the patch soon once I am done validating it. Let me know if there are any design comments. Regards, Parav Pandit -- To unsubscribe from this list: send the line "unsubscribe linux-ke

Re: [PATCH] cgroup_pids: add fork limit

2015-11-10 Thread Parav Pandit
On Tue, Nov 10, 2015 at 9:28 PM, Austin S Hemmelgarn wrote: > On 2015-11-10 10:25, Aleksa Sarai wrote: >> >> Processes don't "use up resources" after they've died and been freed >> (which is dealt with inside PIDs). Yes, lots of small processes that >> die quickly could (in

Re: RFC rdma cgroup

2015-11-03 Thread Parav Pandit
>> Resource are defined as index and as match_table_t. >> >> enum rdma_resource_type { >> RDMA_VERB_RESOURCE_UCTX, >> RDMA_VERB_RESOURCE_AH, >> RDMA_VERB_RESOURCE_PD, >> RDMA_VERB_RESOURCE_CQ, >> RDMA_VERB_RESOURCE_MR, >> RDMA_VERB_RESOURCE_MW, >>

Re: RFC rdma cgroup

2015-11-04 Thread Parav Pandit
On Wed, Nov 4, 2015 at 5:28 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 03/11/2015 21:11, Parav Pandit wrote: >> So it looks like below, >> #cat rdma.resources.verbs.list >> Output: >> mlx4_0 uctx ah pd cq mr mw srq qp flow >> mlx4_1 uctx ah pd cq

Re: [PATCH 4/7] devcg: Added rdma resource tracker object per task

2015-09-08 Thread Parav Pandit
On Tue, Sep 8, 2015 at 1:54 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 08/09/2015 10:04, Parav Pandit wrote: >> On Tue, Sep 8, 2015 at 11:18 AM, Haggai Eran <hagg...@mellanox.com> wrote: >>> On 07/09/2015 23:38, Parav Pandit wrote: >>>&g

Re: [PATCH 3/7] devcg: Added infrastructure for rdma device cgroup.

2015-09-08 Thread Parav Pandit
On Tue, Sep 8, 2015 at 11:01 AM, Haggai Eran <hagg...@mellanox.com> wrote: > On 07/09/2015 23:38, Parav Pandit wrote: >> diff --git a/include/linux/device_cgroup.h b/include/linux/device_cgroup.h >> index 8b64221..cdbdd60 100644 >> --- a/include/linux/device_cgro

Re: [PATCH 4/7] devcg: Added rdma resource tracker object per task

2015-09-08 Thread Parav Pandit
On Tue, Sep 8, 2015 at 11:18 AM, Haggai Eran <hagg...@mellanox.com> wrote: > On 07/09/2015 23:38, Parav Pandit wrote: >> @@ -2676,7 +2686,7 @@ static inline int thread_group_empty(struct >> task_struct *p) >> * Protects ->fs, ->files, ->mm, ->group_inf

Re: [PATCH 5/7] devcg: device cgroup's extension for RDMA resource.

2015-09-08 Thread Parav Pandit
On Tue, Sep 8, 2015 at 2:06 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 07/09/2015 23:38, Parav Pandit wrote: >> +void devcgroup_rdma_uncharge_resource(struct ib_ucontext *ucontext, >> + enum devcgroup_rdma_rt type, int num) >> +{

Re: [PATCH 6/7] devcg: Added support to use RDMA device cgroup.

2015-09-08 Thread Parav Pandit
On Tue, Sep 8, 2015 at 2:10 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 07/09/2015 23:38, Parav Pandit wrote: >> +static void init_ucontext_lists(struct ib_ucontext *ucontext) >> +{ >> + INIT_LIST_HEAD(>pd_list); >> + INIT_LIST_HEAD(>mr_

Re: [PATCH 5/7] devcg: device cgroup's extension for RDMA resource.

2015-09-08 Thread Parav Pandit
On Tue, Sep 8, 2015 at 1:52 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 07/09/2015 23:38, Parav Pandit wrote: >> +/* RDMA resources from device cgroup perspective */ >> +enum devcgroup_rdma_rt { >> + DEVCG_RDMA_RES_TYPE_UCTX, >

Re: [PATCH 5/7] devcg: device cgroup's extension for RDMA resource.

2015-09-08 Thread Parav Pandit
On Tue, Sep 8, 2015 at 7:20 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 08/09/2015 13:18, Parav Pandit wrote: >>> > >>>> >> + * RDMA resource limits are hierarchical, so the highest configured >>>> >> limit of >>>> &g

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-08 Thread Parav Pandit
On Tue, Sep 8, 2015 at 8:53 PM, Tejun Heo <t...@kernel.org> wrote: > Hello, Parav. > > On Tue, Sep 08, 2015 at 02:08:16AM +0530, Parav Pandit wrote: >> Currently user space applications can easily take away all the rdma >> device specific resources such as AH, CQ, QP,

[PATCH 7/7] devcg: Added Documentation of RDMA device cgroup.

2015-09-07 Thread Parav Pandit
Modified device cgroup documentation to reflect its dual purpose without creating new cgroup subsystem for rdma. Added documentation to describe functionality and usage of device cgroup extension for RDMA. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- Documentation/c

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-07 Thread Parav Pandit
. Parav On Tue, Sep 8, 2015 at 2:08 AM, Parav Pandit <pandit.pa...@gmail.com> wrote: > Currently user space applications can easily take away all the rdma > device specific resources such as AH, CQ, QP, MR etc. Due to which other > applications in other cgroup or kernel space ULPs m

[PATCH 1/7] devcg: Added user option to rdma resource tracking.

2015-09-07 Thread Parav Pandit
Added user configuration option to enable/disable RDMA resource tracking feature of device cgroup as sub module. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- init/Kconfig | 12 1 file changed, 12 insertions(+) diff --git a/init/Kconfig b/init/Kconfig index 2

[PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-07 Thread Parav Pandit
of other resources and capabilities. Parav Pandit (7): devcg: Added user option to rdma resource tracking. devcg: Added rdma resource tracking module. devcg: Added infrastructure for rdma device cgroup. devcg: Added rdma resource tracker object per task devcg: device cgroup's extension

[PATCH 5/7] devcg: device cgroup's extension for RDMA resource.

2015-09-07 Thread Parav Pandit
-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/device_rdma_cgroup.h | 83 security/device_rdma_cgroup.c | 422 + 2 files changed, 505 insertions(+) create mode 100644 include/linux/device_rdma_cgroup.h create mode 100644 se

[PATCH 3/7] devcg: Added infrastructure for rdma device cgroup.

2015-09-07 Thread Parav Pandit
for configuring max limit of each rdma resource and one file for querying controllers current resource usage. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/device_cgroup.h | 53 +++ security/device_cgroup.c

[PATCH 4/7] devcg: Added rdma resource tracker object per task

2015-09-07 Thread Parav Pandit
Added RDMA device resource tracking object per task. Added comments to capture usage of task lock by device cgroup for rdma. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/sched.h | 12 +++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/i

[PATCH 6/7] devcg: Added support to use RDMA device cgroup.

2015-09-07 Thread Parav Pandit
), it passes associated ucontext pointer during uncharge, so that rdma cgroup controller can correctly free the resource of right task and right cgroup. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- drivers/infiniband/core/uverbs_cmd.c | 139 +- drivers/infi

[PATCH 2/7] devcg: Added rdma resource tracking module.

2015-09-07 Thread Parav Pandit
Added RDMA resource tracking object of device cgroup. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- security/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/security/Makefile b/security/Makefile index c9bfbc8..c9ad56d 100644 --- a/security/Makefile +++ b/security/Ma

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-10 Thread Parav Pandit
On Thu, Sep 10, 2015 at 10:19 PM, Tejun Heo <t...@kernel.org> wrote: > Hello, Parav. > > On Wed, Sep 09, 2015 at 09:27:40AM +0530, Parav Pandit wrote: >> This is one old white paper, but most of the reasoning still holds true on >> RDMA. >> http://h10032.www

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-14 Thread Parav Pandit
On Sat, Sep 12, 2015 at 1:36 AM, Hefty, Sean wrote: >> > Trying to limit the number of QPs that an app can allocate, >> > therefore, just limits how much of the address space an app can use. >> > There's no clear link between QP limits and HW resource limits, >> > unless you

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-14 Thread Parav Pandit
? Parav On Mon, Sep 14, 2015 at 4:39 PM, Parav Pandit <pandit.pa...@gmail.com> wrote: > On Sat, Sep 12, 2015 at 1:36 AM, Hefty, Sean <sean.he...@intel.com> wrote: >>> > Trying to limit the number of QPs that an app can allocate, >>> > therefore, just limits how m

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-15 Thread Parav Pandit
before submitting actual implementation. Regards, Parav Pandit On Tue, Sep 15, 2015 at 9:15 AM, Jason Gunthorpe <jguntho...@obsidianresearch.com> wrote: > On Tue, Sep 15, 2015 at 08:38:54AM +0530, Parav Pandit wrote: > >> As you precisely described, about wild ratio, >> we

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-10 Thread Parav Pandit
On Fri, Sep 11, 2015 at 9:34 AM, Tejun Heo <t...@kernel.org> wrote: > Hello, Parav. > > On Fri, Sep 11, 2015 at 09:09:58AM +0530, Parav Pandit wrote: >> The fact is that user level application uses hardware resources. >> Verbs layer is software abstraction for

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-10 Thread Parav Pandit
On Fri, Sep 11, 2015 at 1:52 AM, Tejun Heo <t...@kernel.org> wrote: > Hello, Parav. > > On Thu, Sep 10, 2015 at 11:16:49PM +0530, Parav Pandit wrote: >> >> These resources include are- QP (queue pair) to transfer data, CQ >> >> (Completion queue) to indicat

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-14 Thread Parav Pandit
> Because actual hardware resources *ARE* the limit. We cannot abstract > it away. The hardware/driver has real, fixed, immutable limits. No API > abstraction can possibly change that. > > The limits are such there *IS NO* API boundary that can bundle them > into something simpler. There will

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-14 Thread Parav Pandit
On Mon, Sep 14, 2015 at 10:58 PM, Jason Gunthorpe <jguntho...@obsidianresearch.com> wrote: > On Mon, Sep 14, 2015 at 04:39:33PM +0530, Parav Pandit wrote: > >> 1. How does the % of resource, is different than absolute number? With >> rest of the cgroups systems we define

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-11 Thread Parav Pandit
> If the resource isn't and the main goal is preventing runaway > hogs, it'll be able to do that but is that the goal here? For this to > be actually useful for performance contended cases, it'd need higher > level abstractions. > Resource run away by application can lead to (a) kernel and (b)

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-11 Thread Parav Pandit
On Fri, Sep 11, 2015 at 10:04 PM, Tejun Heo <t...@kernel.org> wrote: > Hello, Parav. > > On Fri, Sep 11, 2015 at 09:56:31PM +0530, Parav Pandit wrote: >> Resource run away by application can lead to (a) kernel and (b) other >> applications left out with no re

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-11 Thread Parav Pandit
> cpuset is a special case but think of cpu, memory or io controllers. > Their resource distribution schemes are a lot more developed than > what's proposed in this patchset and that's a necessity because nobody > wants to cripple their machines for resource control. IO controller and

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-14 Thread Parav Pandit
On Sat, Sep 12, 2015 at 12:52 AM, Hefty, Sean wrote: >> So, the existence of resource limitations is fine. That's what we >> deal with all the time. The problem usually with this sort of >> interfaces which expose implementation details to users directly is >> that it

Re: [PATCH 0/7] devcg: device cgroup extension for rdma resource

2015-09-14 Thread Parav Pandit
On Sat, Sep 12, 2015 at 12:55 AM, Tejun Heo <t...@kernel.org> wrote: > Hello, Parav. > > On Fri, Sep 11, 2015 at 10:09:48PM +0530, Parav Pandit wrote: >> > If you're planning on following what the existing memcg did in this >> > area, it's unlikely to go well. Wou

[PATCHv1 1/6] rdmacg: Added rdma cgroup header file

2016-01-05 Thread Parav Pandit
Added rdma cgroup header file which defines its APIs to perform charing/uncharing functionality. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/cgroup_rdma.h | 91 + 1 file changed, 91 insertions(+) create mode 100644 i

[PATCHv1 0/6] rdma controller support

2016-01-05 Thread Parav Pandit
tree yet, which I will do once I receive comments for this pathset. Parav Pandit (6): rdmacg: Added rdma cgroup header file IB/core: Added members to support rdma cgroup rdmacg: implements rdma cgroup IB/core: rdmacg support infrastructure APIs IB/core: use rdma cgroup for resource accoun

[PATCHv1 2/6] IB/core: Added members to support rdma cgroup

2016-01-05 Thread Parav Pandit
Added function pointer table to store resource pool specific operation for each resource type (verb and hw). Added list node to link device to rdma cgroup so that it can participate in resource accounting and limit configuration. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- i

[PATCHv1 5/6] IB/core: use rdma cgroup for resource accounting

2016-01-05 Thread Parav Pandit
It uses charge API to perform resource charing before allocating low level resource. It continues to link the resource to the owning thread group leader task. It uncharges the resource after successful deallocation of resource. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- d

[PATCHv1 6/6] rdmacg: Added documentation for rdma controller.

2016-01-05 Thread Parav Pandit
Added documentation for rdma controller to use in legacy mode and using new unified hirerchy. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- Documentation/cgroup-legacy/rdma.txt | 129 +++ Documentation/cgroup.txt

[PATCHv1 3/6] rdmacg: implements rdma cgroup

2016-01-05 Thread Parav Pandit
they are defined by the external module, typically IB stack and optionally by HCA drivers for those RDMA devices which doesn't have one to one mapping of IB verb resource with hardware resource. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/cgroup_subsys.h |4 + init/K

[PATCHv1 4/6] IB/core: rdmacg support infrastructure APIs

2016-01-05 Thread Parav Pandit
It defines verb RDMA resources that will be registered with RDMA cgroup. It defines new APIs to register device with RDMA cgroup and defines resource token table access interface. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- drivers/infiniband/core/Makefile| 1 + d

Re: [PATCHv1 6/6] rdmacg: Added documentation for rdma controller.

2016-01-06 Thread Parav Pandit
On Wed, Jan 6, 2016 at 3:23 AM, Tejun Heo <t...@kernel.org> wrote: > Hello, > > On Wed, Jan 06, 2016 at 12:28:06AM +0530, Parav Pandit wrote: >> +5-4-1. RDMA Interface Files >> + >> + rdma.resource.verb.list >> + rdma.resource.ve

Re: [PATCHv1 0/6] rdma controller support

2016-01-06 Thread Parav Pandit
Hi Tejun, On Wed, Jan 6, 2016 at 3:26 AM, Tejun Heo <t...@kernel.org> wrote: > Hello, > > On Wed, Jan 06, 2016 at 12:28:00AM +0530, Parav Pandit wrote: >> Resources are not defined by the RDMA cgroup. Resources are defined >> by RDMA/IB stack & optionally by HCA

Re: [PATCHv1 3/6] rdmacg: implements rdma cgroup

2016-01-06 Thread Parav Pandit
On Wed, Jan 6, 2016 at 3:31 AM, Tejun Heo <t...@kernel.org> wrote: > Hello, > > On Wed, Jan 06, 2016 at 12:28:03AM +0530, Parav Pandit wrote: >> +/* hash table to keep map of tgid to owner cgroup */ >> +DEFINE_HASHTABLE(pid_cg_map_tbl, 7); >> +DEFINE_SPIN

Re: [PATCHv1 2/6] IB/core: Added members to support rdma cgroup

2016-01-06 Thread Parav Pandit
On Wed, Jan 6, 2016 at 3:26 AM, Tejun Heo <t...@kernel.org> wrote: > On Wed, Jan 06, 2016 at 12:28:02AM +0530, Parav Pandit wrote: >> Added function pointer table to store resource pool specific >> operation for each resource type (verb and hw). >> Added list node to li

Re: [PATCHv1 6/6] rdmacg: Added documentation for rdma controller.

2016-01-06 Thread Parav Pandit
On Thu, Jan 7, 2016 at 4:27 AM, Tejun Heo <t...@kernel.org> wrote: > Hello, > > On Thu, Jan 07, 2016 at 04:14:26AM +0530, Parav Pandit wrote: >> Yes. I read through. I can see two changes to be made in V2 version of >> this patch. >> 1. rdma.resource.verb.u

Re: [PATCHv10 1/3] rdmacg: Added rdma cgroup controller

2016-06-03 Thread Parav Pandit
faster pace and avoids complexity around back-porting on various OS and their kernel flavors. Please let me know your views. Regards, Parav Pandit On Tue, Apr 19, 2016 at 2:26 PM, Parav Pandit <pandit.pa...@gmail.com> wrote: > Hi Christoph, > > I was on travel. Sorry for

Re: [PATCHv3 1/3] rdmacg: Added rdma cgroup controller.

2016-02-11 Thread Parav Pandit
c etc friend functions. Parav On Wed, Feb 10, 2016 at 9:57 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 01/02/2016 20:59, Parav Pandit wrote: >> On Tue, Feb 2, 2016 at 12:10 AM, Tejun Heo <t...@kernel.org> wrote: >>> So, I'm really not gonna go for individual drive

Re: [PATCHv3 1/3] rdmacg: Added rdma cgroup controller.

2016-02-11 Thread Parav Pandit
On Wed, Feb 10, 2016 at 9:57 PM, Haggai Eran wrote: > > There is indeed an effort to backport the latest RDMA subsystem modules to > older kernels, and it would be preferable to be able to introduce new > resources through these modules. Right. There is hardly 10 to 20 lines

Re: [PATCHv3 1/3] rdmacg: Added rdma cgroup controller.

2016-02-01 Thread Parav Pandit
On Tue, Feb 2, 2016 at 12:10 AM, Tejun Heo <t...@kernel.org> wrote: > Hello, Parav. > > On Sun, Jan 31, 2016 at 11:20:45PM +0530, Parav Pandit wrote: >> > Yes, it can. It just becomes a part of kernel ABI that the IB stack >> > module depends on. >> > &g

Re: [PATCHv3 1/3] rdmacg: Added rdma cgroup controller.

2016-01-31 Thread Parav Pandit
informed design decision. Hi Tejun, On Sun, Jan 31, 2016 at 4:34 PM, Tejun Heo <t...@kernel.org> wrote: > Hello, Parav. > > On Sun, Jan 31, 2016 at 04:11:54PM +0530, Parav Pandit wrote: >> No. We agreed that let IB stack define in the header file that rdmacg >> can include

Re: [PATCHv3 1/3] rdmacg: Added rdma cgroup controller.

2016-01-30 Thread Parav Pandit
Hi Tejun, On Sun, Jan 31, 2016 at 12:00 AM, Tejun Heo <t...@kernel.org> wrote: > Hello, > > On Sat, Jan 30, 2016 at 08:53:05PM +0530, Parav Pandit wrote: >> +#ifdef CONFIG_CGROUP_RDMA >> +#define RDMACG_MAX_RESOURCE_INDEX (64) > > The list of resource

[PATCHv2 2/3] IB/core: added support to use rdma cgroup controller

2016-01-30 Thread Parav Pandit
uverbs layer to perform resource charge/uncharge functionality. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- drivers/infiniband/core/Makefile | 1 + drivers/infiniband/core/cgroup.c | 108 ++ drivers/infiniband/core/core_priv.h | 45 d

[PATCHv2 3/3] rdmacg: Added documentation for rdma controller

2016-01-30 Thread Parav Pandit
Added documentation for rdma controller to use in legacy mode and using new unified hirerchy. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- Documentation/cgroup-v1/rdma.txt | 122 +++ Documentation/cgroup-v2.txt | 43 ++ 2

[PATCHv2 1/3] rdmacg: Added rdma cgroup controller.

2016-01-30 Thread Parav Pandit
changing kernel, which is frequent as IB stack is going through changes and enhancements. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/cgroup_rdma.h | 78 include/linux/cgroup_subsys.h |4 + init/Kconfig | 12 + kernel/Ma

[PATCHv2 0/3] rdma controller support

2016-01-30 Thread Parav Pandit
/476 [3] https://lkml.org/lkml/2015/10/28/144 This patchset is for Tejun's for-4.5 branch. It is not attempted on Doug's rdma tree yet, which I will do once I receive comments for this pathset. Parav Pandit (3): rdmacg: Added rdma cgroup controller. IB/core: added support to use rdma cg

Re: [PATCHv2 2/3] IB/core: added support to use rdma cgroup controller

2016-01-30 Thread Parav Pandit
your patch is applied to the wrong git tree, please drop us a note to > help improving the system] > > url: > https://github.com/0day-ci/linux/commits/Parav-Pandit/rdma-controller-support/20160130-194534 > base: https://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git fo

[PATCHv3 3/3] rdmacg: Added documentation for rdma controller

2016-01-30 Thread Parav Pandit
Added documentation for rdma controller to use in v1 mode and using new unified hirerchy mode v2. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- Documentation/cgroup-v1/rdma.txt | 122 +++ Documentation/cgroup-v2.txt | 43 +++

[PATCHv3 1/3] rdmacg: Added rdma cgroup controller.

2016-01-30 Thread Parav Pandit
pool whenever necessary, instead of creating them during cgroup creation and device registration time. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/cgroup_rdma.h | 80 include/linux/cgroup_subsys.h |4 + init/Kconfig | 12 +

[PATCHv3 0/3] rdmacg: IB/core: rdma controller support

2016-01-30 Thread Parav Pandit
ttps://lkml.org/lkml/2015/9/7/476 [3] https://lkml.org/lkml/2015/10/28/144 This patchset is for Tejun's for-4.5 branch. It is not attempted on Doug's rdma tree yet, which I will do once I receive comments for this pathset. Parav Pandit (3): rdmacg: Added rdma cgroup controller. IB/core: added sup

[PATCHv3 2/3] IB/core: added support to use rdma cgroup controller

2016-01-30 Thread Parav Pandit
. - Added uverbs layer to perform resource charge/uncharge functionality. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- drivers/infiniband/core/Makefile | 1 + drivers/infiniband/core/cgroup.c | 108 ++ drivers/infiniband/core/core_priv.h

[PATCHv4 3/3] rdmacg: Added documentation for rdma controller

2016-01-30 Thread Parav Pandit
Added documentation for rdma controller to use in v1 mode and using new unified hirerchy mode v2. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- Documentation/cgroup-v1/rdma.txt | 117 +++ Documentation/cgroup-v2.txt | 43 +++

[PATCHv4 1/3] rdmacg: Added rdma cgroup controller.

2016-01-30 Thread Parav Pandit
pool whenever necessary, instead of creating them during cgroup creation and device registration time. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/cgroup_rdma.h | 79 include/linux/cgroup_subsys.h | 4 + init/Kconfig | 11 + kernel/Ma

[PATCHv4 2/3] IB/core: added support to use rdma cgroup controller

2016-01-30 Thread Parav Pandit
uverbs layer to perform resource charge/uncharge functionality. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- drivers/infiniband/core/Makefile | 1 + drivers/infiniband/core/cgroup.c | 137 ++ drivers/infiniband/core/core_priv.h | 45 d

[PATCHv4 0/3] rdmacg: IB/core: rdma controller support

2016-01-30 Thread Parav Pandit
.org/lkml/2015/10/28/144 This patchset is for Tejun's for-4.5 branch. It is not attempted on Doug's rdma tree yet, which I will do once I receive comments for this pathset. Parav Pandit (3): rdmacg: Added rdma cgroup controller. IB/core: added support to use rdma cgroup controller rdmacg: A

[PATCHv5 0/3] rdmacg: IB/core: rdma controller support

2016-01-30 Thread Parav Pandit
ents for this pathset. Parav Pandit (3): rdmacg: Added rdma cgroup controller. IB/core: added support to use rdma cgroup controller rdmacg: Added documentation for rdma controller Documentation/cgroup-v1/rdma.txt | 117 Documentation/cgroup-v2.txt | 43 ++ dri

Re: [PATCHv5 0/3] rdmacg: IB/core: rdma controller support

2016-01-31 Thread Parav Pandit
On Sun, Jan 31, 2016 at 3:16 PM, Tejun Heo <t...@kernel.org> wrote: > On Sun, Jan 31, 2016 at 10:05:09AM +0530, Parav Pandit wrote: >> Changes from v4: >> * Fixed compilation errors for lockdep_assert_held reported by kbuild >>test robot >> * Fixed compilati

Re: [PATCHv3 1/3] rdmacg: Added rdma cgroup controller.

2016-01-31 Thread Parav Pandit
On Sun, Jan 31, 2016 at 3:32 PM, Tejun Heo <t...@kernel.org> wrote: > Hello, Parav. > > On Sun, Jan 31, 2016 at 02:14:13AM +0530, Parav Pandit wrote: > ... >> V1 patch had IB resources defined in the header file of rdmacg, which >> I believe is very restrictive

[PATCHv5 2/3] IB/core: added support to use rdma cgroup controller

2016-01-30 Thread Parav Pandit
uverbs layer to perform resource charge/uncharge functionality. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- drivers/infiniband/core/Makefile | 1 + drivers/infiniband/core/cgroup.c | 138 ++ drivers/infiniband/core/core_priv.h | 45 d

[PATCHv5 1/3] rdmacg: Added rdma cgroup controller.

2016-01-30 Thread Parav Pandit
pool whenever necessary, instead of creating them during cgroup creation and device registration time. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/cgroup_rdma.h | 78 include/linux/cgroup_subsys.h | 4 + init/Kconfig | 11 + kernel/Ma

[PATCHv5 3/3] rdmacg: Added documentation for rdma controller

2016-01-30 Thread Parav Pandit
Added documentation for rdma controller to use in v1 mode and using new unified hirerchy mode v2. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- Documentation/cgroup-v1/rdma.txt | 117 +++ Documentation/cgroup-v2.txt | 43 +++

Re: [PATCHv6 2/3] IB/core: added support to use rdma cgroup controller

2016-02-24 Thread Parav Pandit
On Wed, Feb 24, 2016 at 7:13 PM, Haggai Eran wrote: >> + * all the resources are deallocated, and after a stage when any >> + * other resource allocation of user application cannot be done >> + * for this device to avoid any leak in accounting. >> + * HCA drivers should

Re: [PATCHv6 3/3] rdmacg: Added documentation for rdmacg

2016-02-24 Thread Parav Pandit
On Wed, Feb 24, 2016 at 7:56 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 20/02/2016 13:00, Parav Pandit wrote: >> Added documentation for v1 and v2 version describing high >> level design and usage examples on using rdma controller. >> >> Signed-off-by: Par

Re: [PATCHv6 1/3] rdmacg: Added rdma cgroup controller

2016-02-24 Thread Parav Pandit
On Wed, Feb 24, 2016 at 6:43 PM, Haggai Eran wrote: > Hi, > > Overall I the patch looks good to me. I have a few comments below. > Thanks for the review. Addressing most comments one. Some comments inline. > Its -> It's Ok. >> +void rdmacg_query_limit(struct rdmacg_device

Re: [PATCHv6 3/3] rdmacg: Added documentation for rdmacg

2016-02-28 Thread Parav Pandit
o.k. I will add a note there that IB stack would honor the limits given by the rdma cgroup. On Sun, Feb 28, 2016 at 2:25 PM, Haggai Eran <hagg...@mellanox.com> wrote: > On 24/02/2016 17:21, Parav Pandit wrote: >> On Wed, Feb 24, 2016 at 7:56 PM, Haggai Eran <hagg...@mellanox.com

[PATCHv7 3/3] rdmacg: Added documentation for rdmacg

2016-02-28 Thread Parav Pandit
Added documentation for v1 and v2 version describing high level design and usage examples on using rdma controller. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- Documentation/cgroup-v1/rdma.txt | 111 +++ Documentation/cgroup-v2.txt

[PATCHv7 2/3] IB/core: added support to use rdma cgroup controller

2016-02-28 Thread Parav Pandit
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.pa...@gmail.com> --- drivers/infiniband/core/Makefile

[PATCHv7 1/3] rdmacg: Added rdma cgroup controller

2016-02-28 Thread Parav Pandit
is done. Its a tradeoff of memory vs little more code space that creates resource pool whenever necessary, instead of creating them during cgroup creation and device registration time. Signed-off-by: Parav Pandit <pandit.pa...@gmail.com> --- include/linux/cgroup_rdma.h | 51 +++ include

  1   2   3   4   5   6   7   >