[rds-devel] initial patches to support device migration
Andy Grover
andy.grover at oracle.com
Thu Apr 22 15:49:19 PDT 2010
Zach Brown wrote:
>> Please prepend "RDS:" or "RDS/IB:" as appropriate to patch subjects.
>
> Oh, and I guess we need to duplicate the changes for the iw_ side of the
> universe. Is there a particular way that you like to handle that?
Short answer:
Don't bother, just leave it for now.
Long answer:
The main difference between ib_ and iw_ is ib_ uses Fast Memory
Registrations (FMRs), and iw_ uses FastReg Work Requests (FRWRs). FRWRs
are better in the abstract, because they are in the IB spec, whereas
FMRs are not.
IB can't switch to FRWRs until GET_MR sockopt has been deprecated and
removed, in favor of GET_MR_FOR_DEST. OFED 1.5 introduced
GET_MR_FOR_DEST, we'll probably deprecate GET_MR in 1.6, and remove it
in 1.7.
Once we do that, then we can contemplate a switch to FRWRs for IB, and
have a unified codebase for IB and iWARP.
Until then, we need to keep supporting iWARP bcopy. We could either work
to put support for iWARP bcopy into ib_, or keep mindlessly applying ib_
patches to iw_, so it doesn't bit-rot. So far I've found it easier to
double-patch, but in retrospect the other way would've been better. That
was the path that Olaf and Jon Mason were originally pursuing, but when
I came on board, I just couldn't guarantee the iw changes wouldn't break
ib, so I punted and pulled it out into its own transport.
Usually applying ib_ fixes to iw_ is pretty straightforward, but I wait
until right before we're ready to push it to ofed or mainline to sync
them up. So don't bother, just leave it for now. :)
Regards -- Andy
More information about the rds-devel
mailing list