]> www.infradead.org Git - users/jedix/linux-maple.git/commit
sif: fmr: call sif_post_flush_tlb with ptw flush and in SR/IOV cases
authorKnut Omang <knut.omang@oracle.com>
Tue, 19 Jul 2016 05:54:45 +0000 (07:54 +0200)
committerSantosh Shilimkar <santosh.shilimkar@oracle.com>
Wed, 27 Jul 2016 17:24:22 +0000 (10:24 -0700)
commitff870e6d145e4ee5fb542949670348fc6571fc8e
tree061c26c1fd1af535136f8cd0f7fa6bdbce0c92fd
parent72f5f2a78eebc52d567d4daa39a8bba431942846
sif: fmr: call sif_post_flush_tlb with ptw flush and in SR/IOV cases

Flush the ptw cache as part of the bulk tlb flush.

With the introduction of more dynamic page tables,
the code to distinguish between the two types of cases,
simple page table entries and entries with interior nodes
was simplified because we no longer always know if PTW entries
have been consumed. Unfortunately the code was unified to the
wrong case which does not flush the ptw cache possibly causing
cache entries to remain in the cache and theoretically have
sif look up pages that no longer exists or that has been reused
for other purposes.

Also now that the EPSC handles the tlb flushing, it is just fine
to call that code even in virtualized setups.
Remove tests for whether VFs exists or we are running in a VF.

Orabug: 24315529

Signed-off-by: Knut Omang <knut.omang@oracle.com>
Reviewed-by: HÃ¥kon Bugge <haakon.bugge@oracle.com>
drivers/infiniband/hw/sif/sif_fmr.c