Commit 5a264285 authored by Jan Beulich's avatar Jan Beulich Committed by Juergen Gross

xen-blkback: don't "handle" error by BUG()

In particular -ENOMEM may come back here, from set_foreign_p2m_mapping().
Don't make problems worse, the more that handling elsewhere (together
with map's status fields now indicating whether a mapping wasn't even
attempted, and hence has to be considered failed) doesn't require this
odd way of dealing with errors.

This is part of XSA-362.
Signed-off-by: default avatarJan Beulich <jbeulich@suse.com>
Cc: stable@vger.kernel.org
Reviewed-by: default avatarJuergen Gross <jgross@suse.com>
Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
parent 36bf1dfb
...@@ -811,10 +811,8 @@ static int xen_blkbk_map(struct xen_blkif_ring *ring, ...@@ -811,10 +811,8 @@ static int xen_blkbk_map(struct xen_blkif_ring *ring,
break; break;
} }
if (segs_to_map) { if (segs_to_map)
ret = gnttab_map_refs(map, NULL, pages_to_gnt, segs_to_map); ret = gnttab_map_refs(map, NULL, pages_to_gnt, segs_to_map);
BUG_ON(ret);
}
/* /*
* Now swizzle the MFN in our domain with the MFN from the other domain * Now swizzle the MFN in our domain with the MFN from the other domain
...@@ -830,7 +828,7 @@ static int xen_blkbk_map(struct xen_blkif_ring *ring, ...@@ -830,7 +828,7 @@ static int xen_blkbk_map(struct xen_blkif_ring *ring,
gnttab_page_cache_put(&ring->free_pages, gnttab_page_cache_put(&ring->free_pages,
&pages[seg_idx]->page, 1); &pages[seg_idx]->page, 1);
pages[seg_idx]->handle = BLKBACK_INVALID_HANDLE; pages[seg_idx]->handle = BLKBACK_INVALID_HANDLE;
ret |= 1; ret |= !ret;
goto next; goto next;
} }
pages[seg_idx]->handle = map[new_map_idx].handle; pages[seg_idx]->handle = map[new_map_idx].handle;
......
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