diff options
author | Annie Li <annie.li@oracle.com> | 2014-01-28 11:35:42 +0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-01-27 19:48:45 -0800 |
commit | cefe0078eea52af17411eb1248946a94afb84ca5 (patch) | |
tree | d2eb8ccdfee40d0dbb043cacee7cb67e40ebce4b /kernel/sys_ni.c | |
parent | ce60e0c4df5f95086d5c2662c5cfa0beb8181c6d (diff) |
xen-netfront: fix resource leak in netfront
This patch removes grant transfer releasing code from netfront, and uses
gnttab_end_foreign_access to end grant access since
gnttab_end_foreign_access_ref may fail when the grant entry is
currently used for reading or writing.
* clean up grant transfer code kept from old netfront(2.6.18) which grants
pages for access/map and transfer. But grant transfer is deprecated in current
netfront, so remove corresponding release code for transfer.
* fix resource leak, release grant access (through gnttab_end_foreign_access)
and skb for tx/rx path, use get_page to ensure page is released when grant
access is completed successfully.
Xen-blkfront/xen-tpmfront/xen-pcifront also have similar issue, but patches
for them will be created separately.
V6: Correct subject line and commit message.
V5: Remove unecessary change in xennet_end_access.
V4: Revert put_page in gnttab_end_foreign_access, and keep netfront change in
single patch.
V3: Changes as suggestion from David Vrabel, ensure pages are not freed untill
grant acess is ended.
V2: Improve patch comments.
Signed-off-by: Annie Li <annie.li@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel/sys_ni.c')
0 files changed, 0 insertions, 0 deletions