Commit 96283f9a authored by Stefano Stabellini's avatar Stefano Stabellini Committed by Boris Ostrovsky

pvcalls-front: don't try to free unallocated rings

inflight_req_id is 0 when initialized. If inflight_req_id is 0, there is
no accept_map to free. Fix the check in pvcalls_front_release.
Signed-off-by: default avatarStefano Stabellini <stefanos@xilinx.com>
Reviewed-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
parent b79470b6
...@@ -1030,8 +1030,8 @@ int pvcalls_front_release(struct socket *sock) ...@@ -1030,8 +1030,8 @@ int pvcalls_front_release(struct socket *sock)
spin_lock(&bedata->socket_lock); spin_lock(&bedata->socket_lock);
list_del(&map->list); list_del(&map->list);
spin_unlock(&bedata->socket_lock); spin_unlock(&bedata->socket_lock);
if (READ_ONCE(map->passive.inflight_req_id) != if (READ_ONCE(map->passive.inflight_req_id) != PVCALLS_INVALID_ID &&
PVCALLS_INVALID_ID) { READ_ONCE(map->passive.inflight_req_id) != 0) {
pvcalls_front_free_map(bedata, pvcalls_front_free_map(bedata,
map->passive.accept_map); map->passive.accept_map);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment