+37
−4
Loading
To better match bdev modules like nvme, complete requests for the bdev/null driver asynchronously. This will be done by allocating IO channels that register a poller and keep a TAILQ of bdev IO to be completed next time the poller runs. This is actually more efficient as well, since completing I/O in submit_request context defers the completion using an event. A benchmark of bdevperf with split running on top of null module shows this patch increases throughput 20%. Signed-off-by:Jim Harris <james.r.harris@intel.com> Change-Id: I8c664234660c249fd8ec8d9244eed33502d4103e Reviewed-on: https://review.gerrithub.io/392528 Tested-by:
SPDK Automated Test System <sys_sgsw@intel.com> Reviewed-by:
Ben Walker <benjamin.walker@intel.com> Reviewed-by:
Daniel Verkamp <daniel.verkamp@intel.com>