IB/fmr_pool: Flush all dirty FMRs from ib_fmr_pool_flush()
authorPete Wyckoff <pw@osc.edu>
Tue, 26 Feb 2008 18:27:53 +0000 (13:27 -0500)
committerRoland Dreier <rolandd@cisco.com>
Fri, 29 Feb 2008 21:31:48 +0000 (13:31 -0800)
commit331552925d17ffa2f5c676e282d4fd37c852d9e3
tree6dba57eb575399cef6e7498110670209ee99f148
parent35fb5340e3de5dff86923eb0cded748c3a6e05e7
IB/fmr_pool: Flush all dirty FMRs from ib_fmr_pool_flush()

Commit a3cd7d90 ("IB/fmr_pool: ib_fmr_pool_flush() should flush all
dirty FMRs") caused a regression for iSER and was reverted in
e5507736.

This change attempts to redo the original patch so that all used FMR
entries are flushed when ib_flush_fmr_pool() is called without
affecting the normal FMR pool cleaning thread.  Simply move used
entries from the clean list onto the dirty list in ib_flush_fmr_pool()
before letting the cleanup thread do its job.

Signed-off-by: Pete Wyckoff <pw@osc.edu>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/core/fmr_pool.c