Re: [PATCH v1] drm/ttm: Refcount allocated tail pages
From: Christian König
Date: Mon Aug 15 2022 - 09:54:10 EST
Am 15.08.22 um 15:45 schrieb Dmitry Osipenko:
[SNIP]
Well that comment sounds like KVM is doing the right thing, so I'm
wondering what exactly is going on here.
KVM actually doesn't hold the page reference, it takes the temporal
reference during page fault and then drops the reference once page is
mapped, IIUC. Is it still illegal for TTM? Or there is a possibility for
a race condition here?
Well the question is why does KVM grab the page reference in the first
place?
If that is to prevent the mapping from changing then yes that's illegal
and won't work. It can always happen that you grab the address, solve
the fault and then immediately fault again because the address you just
grabbed is invalidated.
If it's for some other reason than we should probably investigate if we
shouldn't stop doing this.
Regards,
Christian.