Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.4:Update
xen.14188
5e16fb6a-x86-clear-per-cpu-stub-page-info.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 5e16fb6a-x86-clear-per-cpu-stub-page-info.patch of Package xen.14188
# Commit 774901788c5614798931a1cb2e20dd8b885f97ab # Date 2020-01-09 11:07:38 +0100 # Author Juergen Gross <jgross@suse.com> # Committer Jan Beulich <jbeulich@suse.com> x86: clear per cpu stub page information in cpu_smpboot_free() cpu_smpboot_free() removes the stubs for the cpu going offline, but it isn't clearing the related percpu variables. This will result in crashes when a stub page is released due to all related cpus gone offline and one of those cpus going online later. Fix that by clearing stubs.addr and stubs.mfn in order to allocate a new stub page when needed, irrespective of whether the CPU gets parked or removed. Fixes: 2e6c8f182c9c50 ("x86: distinguish CPU offlining from CPU removal") Signed-off-by: Juergen Gross <jgross@suse.com> Reviewed-by: Wei Liu <wl@xen.org> Reviewed-by: Jan Beulich <jbeulich@suse.com> Tested-by: Tao Xu <tao3.xu@intel.com> --- a/xen/arch/x86/smpboot.c +++ b/xen/arch/x86/smpboot.c @@ -953,6 +953,8 @@ static void cpu_smpboot_free(unsigned in unmap_domain_page(stub_page); destroy_xen_mappings(per_cpu(stubs.addr, cpu) & PAGE_MASK, (per_cpu(stubs.addr, cpu) | ~PAGE_MASK) + 1); + per_cpu(stubs.addr, cpu) = 0; + per_cpu(stubs.mfn, cpu) = 0; if ( i == STUBS_PER_PAGE ) free_domheap_page(mfn_to_page(mfn)); }
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor