hibernate.c (7ae9fb1b7ecbb5d85d07857943f677fd1a559b18) | hibernate.c (907835e6dee6f77ac30ae50bb3f88bd92055c86e) |
---|---|
1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Hibernation support for x86 4 * 5 * Copyright (c) 2007 Rafael J. Wysocki <rjw@sisk.pl> 6 * Copyright (c) 2002 Pavel Machek <pavel@ucw.cz> 7 * Copyright (c) 2001 Patrick Mochel <mochel@osdl.org> 8 */ --- 156 unchanged lines hidden (view full) --- 165 pgd = (pgd_t *)__va(read_cr3_pa()) + 166 pgd_index(relocated_restore_code); 167 p4d = p4d_offset(pgd, relocated_restore_code); 168 if (p4d_large(*p4d)) { 169 set_p4d(p4d, __p4d(p4d_val(*p4d) & ~_PAGE_NX)); 170 goto out; 171 } 172 pud = pud_offset(p4d, relocated_restore_code); | 1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Hibernation support for x86 4 * 5 * Copyright (c) 2007 Rafael J. Wysocki <rjw@sisk.pl> 6 * Copyright (c) 2002 Pavel Machek <pavel@ucw.cz> 7 * Copyright (c) 2001 Patrick Mochel <mochel@osdl.org> 8 */ --- 156 unchanged lines hidden (view full) --- 165 pgd = (pgd_t *)__va(read_cr3_pa()) + 166 pgd_index(relocated_restore_code); 167 p4d = p4d_offset(pgd, relocated_restore_code); 168 if (p4d_large(*p4d)) { 169 set_p4d(p4d, __p4d(p4d_val(*p4d) & ~_PAGE_NX)); 170 goto out; 171 } 172 pud = pud_offset(p4d, relocated_restore_code); |
173 if (pud_large(*pud)) { | 173 if (pud_leaf(*pud)) { |
174 set_pud(pud, __pud(pud_val(*pud) & ~_PAGE_NX)); 175 goto out; 176 } 177 pmd = pmd_offset(pud, relocated_restore_code); 178 if (pmd_large(*pmd)) { 179 set_pmd(pmd, __pmd(pmd_val(*pmd) & ~_PAGE_NX)); 180 goto out; 181 } --- 38 unchanged lines hidden --- | 174 set_pud(pud, __pud(pud_val(*pud) & ~_PAGE_NX)); 175 goto out; 176 } 177 pmd = pmd_offset(pud, relocated_restore_code); 178 if (pmd_large(*pmd)) { 179 set_pmd(pmd, __pmd(pmd_val(*pmd) & ~_PAGE_NX)); 180 goto out; 181 } --- 38 unchanged lines hidden --- |