Ralph> I agree. The kernel driver is careful to allocate the new
Ralph> queue and copy the old contents to the new one
Ralph> atomically. The issue is making sure the old queue isn't
Ralph> still being used by some other thread. I guess if the
Ralph> semantics for resize are that an error means the old mmap
Ralph> is still valid but if the resize succeeds, the old mmap is
Ralph> invalid, then there isn't an error recovery issue. All user
Ralph> level threads lock before using the queue address so the
Ralph> change of address is protected.
Those seem like the only sane semantics -- if the operation fails then
the state of the CQ shouldn't change.
- R.
_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general
To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general