Re: [rdma-core v5 0/8] Broadcom User Space RoCE Driver

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2017-04-24 at 14:53 -0400, Devesh Sharma wrote:
> This series introduces the user space RoCE driver for the Broadcom
> NetXtreme-E 10/25/40/50 RDMA Ethernet Controller. This driver
> is dependent on the bnxt_re driver posted earlier to linux-rdma
> community and is under reveiw.
> 
> This patch series is based on the latest master of rdma-core
> repository hosted at https://github.com/linux-rdma/rdma-core.git
> 
> The GIT for this library is hosted at following URL on github
> https://github.com/dsharma283/bnxtre-rdma-core.git
> branch: bnxtre-v5
> 
> Please review and give your valuable feedback for the
> betterment.

In general, the driver looked to be in pretty good shape.  I've merged
it into rdma-core.  The only thing I noticed is something that other
drivers do as well, but which I have a personal issue with, and that's
over use of spin locks in user space IMHO.  There are aspects of
context that make spin locks OK in the kernel, but those aspects are
not true in user space (spin lock can be interrupted and process
scheduled away while holding the lock for instance, where as we protect
against that in the kernel, the scheduler doesn't know when user space
is holding a spin lock, scheduler gives precedent and even extra time
slices to processes that appear to be working and making forward
progress, and scheduler can't tell the difference between spinning on a
lock and making forward progress, so spinning can possibly result in
the scheduler keeping the spinning task on the run queue while the task
that needs to be brought back onto the run queue is kept waiting,
things like this).  Unless they've updated pthreads to do stuff that
I'm not aware of anyway, which is always possible, I prefer to see
mutexes instead of spin locks in user space because they are safer and
more likely to result in forward progress in the event of contention.
 But, as I said, that's just my personal bias.  It might be nice if we
could devise a test to quantify these issues and see if I'm worried
over nothing or if contention on user space spin locks can be as bad as
I imagine.

-- 
Doug Ledford <dledford@xxxxxxxxxx>
    GPG KeyID: B826A3330E572FDD
   
Key fingerprint = AE6B 1BDA 122B 23B4 265B  1274 B826 A333 0E57 2FDD

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux