Yes, from this viewpoint more reasonable approach would be to untie
corresponding ptes from swap entry and mark them as invalid to trigger
fault on access.
Not even tried simply because it is definitely not that thing, which
we needed. We used this for process migration and for that purpose
we really need to know when swapoff() fails ASAP to abort migration,
to kill processes which got invalid pages and to resume original copy.
Obviously, delayed fault is absolutely inappropriate for this particular
purpose.
Alexey
-