]> xenbits.xensource.com Git - xen.git/commit
gnttab: fix GNTTABOP_copy continuation handling
authorJan Beulich <jbeulich@suse.com>
Tue, 14 Apr 2020 12:42:32 +0000 (14:42 +0200)
committerJan Beulich <jbeulich@suse.com>
Tue, 14 Apr 2020 12:42:32 +0000 (14:42 +0200)
commitd6f22d5d9e8d6848ec229083ac9fb044f0adea93
tree52a2a62218a5d62e7bf2dd0e2c421bec7913ba6d
parentda0c66c8f48042a0186799014af69db0303b1da5
gnttab: fix GNTTABOP_copy continuation handling

The XSA-226 fix was flawed - the backwards transformation on rc was done
too early, causing a continuation to not get invoked when the need for
preemption was determined at the very first iteration of the request.
This in particular means that all of the status fields of the individual
operations would be left untouched, i.e. set to whatever the caller may
or may not have initialized them to.

This is part of XSA-318.

Reported-by: Pawel Wieczorkiewicz <wipawel@amazon.de>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Tested-by: Pawel Wieczorkiewicz <wipawel@amazon.de>
xen/common/grant_table.c