mirror of https://gitee.com/openkylin/linux.git
7ed9e3d97c
Pinned pages are not properly accounted particularly when
mapping error occurs on IOTLB update. Clean up dangling
pinned pages for the error path. As the inflight pinned
pages, specifically for memory region that strides across
multiple chunks, would need more than one free page for
book keeping and accounting. For simplicity, pin pages
for all memory in the IOVA range in one go rather than
have multiple pin_user_pages calls to make up the entire
region. This way it's easier to track and account the
pages already mapped, particularly for clean-up in the
error path.
Fixes:
|
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
iotlb.c | ||
net.c | ||
scsi.c | ||
test.c | ||
test.h | ||
vdpa.c | ||
vhost.c | ||
vhost.h | ||
vringh.c | ||
vsock.c |