[PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2014-12-17 Thread Yishai Hadas
Enables the uverbs_remove_one to succeed despite the fact that there are running IB applications working with the given ib device. This functionality enables a HW device to be unbind/reset despite the fact that there are running user space applications using it. It exposes a new IB kernel API nam

Re: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2015-05-25 Thread Jason Gunthorpe
On Wed, May 13, 2015 at 02:10:36PM +0300, Yishai Hadas wrote: > + struct srcu_struct disassociate_srcu; There is no need for rcu for this, use a rw sem. > @@ -1326,6 +1327,13 @@ ssize_t ib_uverbs_create_comp_channel(struct > ib_uverbs_file *file, > return

Re: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2015-05-27 Thread Doug Ledford
On Mon, 2015-05-25 at 10:54 -0600, Jason Gunthorpe wrote: > On Wed, May 13, 2015 at 02:10:36PM +0300, Yishai Hadas wrote: > > > + struct srcu_struct disassociate_srcu; > > There is no need for rcu for this, use a rw sem. The rcu was used becuase it's on the hot path I assu

Re: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2015-05-27 Thread Jason Gunthorpe
On Wed, May 27, 2015 at 12:04:29PM -0400, Doug Ledford wrote: > On Mon, 2015-05-25 at 10:54 -0600, Jason Gunthorpe wrote: > > On Wed, May 13, 2015 at 02:10:36PM +0300, Yishai Hadas wrote: > > > > > + struct srcu_struct disassociate_srcu; > > > > There is no need for rcu for t

Re: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2015-05-27 Thread Yishai Hadas
On 5/27/2015 7:04 PM, Doug Ledford wrote: On Mon, 2015-05-25 at 10:54 -0600, Jason Gunthorpe wrote: On Wed, May 13, 2015 at 02:10:36PM +0300, Yishai Hadas wrote: + struct srcu_struct disassociate_srcu; There is no need for rcu for this, use a rw sem. The rcu was

Re: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2015-05-27 Thread Or Gerlitz
On Wed, May 27, 2015 at 8:43 PM, Jason Gunthorpe wrote: > On Wed, May 27, 2015 at 12:04:29PM -0400, Doug Ledford wrote: >> On Mon, 2015-05-25 at 10:54 -0600, Jason Gunthorpe wrote: >> > On Wed, May 13, 2015 at 02:10:36PM +0300, Yishai Hadas wrote: >> > >> > > + struct srcu_struct

Re: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2015-05-27 Thread Doug Ledford
On Thu, 2015-05-28 at 00:36 +0300, Or Gerlitz wrote: > On Wed, May 27, 2015 at 8:43 PM, Jason Gunthorpe > wrote: > > On Wed, May 27, 2015 at 12:04:29PM -0400, Doug Ledford wrote: > >> On Mon, 2015-05-25 at 10:54 -0600, Jason Gunthorpe wrote: > >> > On Wed, May 13, 2015 at 02:10:36PM +0300, Yishai

Re: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2015-05-27 Thread Jason Gunthorpe
On Wed, May 27, 2015 at 11:47:31PM +0300, Yishai Hadas wrote: > That's correct, it was chosen from performance reasons to enable parallel > commands as part of ib_uverbs_write with minimum synchronization overhead > comparing the rwsem. The locking scheme makes no sense, see my other email, design

RE: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2015-05-29 Thread Shachar Raindel
Hi, > From: Jason Gunthorpe [mailto:jguntho...@obsidianresearch.com] > Sent: Thursday, May 28, 2015 9:19 AM > Subject: Re: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal > when there are active user space applications > > On Wed, May 27, 2015 at 11:47:31PM +0300,

Re: [PATCH V3 for-next 1/3] IB/uverbs: Enable device removal when there are active user space applications

2015-05-29 Thread Jason Gunthorpe
On Fri, May 29, 2015 at 10:30:52AM +, Shachar Raindel wrote: > > The locking scheme makes no sense, see my other email, design it for a > > rwsem and then consider rcu if necessary. > > Jason, the RCU based scheme is important, as it allows the performance > critical path (verbs such as ibv_re