On Fri, Jul 10, 2015 at 11:55:29AM +0300, Sagi Grimberg wrote: > If there is one thing worse than a complicated API, it is a restrictive > one. I'd much rather ULPs just having a simple API for registering > memory.
Quite to the contrary. The complex API almost asks for weird abuses and twists. The too restrictive one means people that want to extend it need to start a discussion on how we extent the API, which improves the chances to come up with something sensible dramatically. > >I expect all these calls would be function pointers, and each driver > >would provide a function pointer that is optimal for it's use. Eg mlx4 > >would provide a pointer that used the S/G list, then falls back to > >FRMR if the S/G list is exhausted. The core code would provide a > >toolbox of common functions the drivers can use here. > > Maybe it's just me, but I can't help but wander if this is facilitating > an atmosphere where drivers will keep finding new ways to abuse even > the most simple operations. I'm not too excited about moving the code in the drivers. The RDMA subsystem actually has a lot more hardware drivers than ULDs, so moving logic into them seems like a major step backwards. From my journeys into the drivers it rather seems like they are doing too much work already. Having a few schemes availabe in the core code that the driver can chose from seems like a much more sensible option. -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html
