hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/arch/powerpc/kvm/bookehv_interrupts.S
....@@ -1,16 +1,5 @@
1
+/* SPDX-License-Identifier: GPL-2.0-only */
12 /*
2
- * This program is free software; you can redistribute it and/or modify
3
- * it under the terms of the GNU General Public License, version 2, as
4
- * published by the Free Software Foundation.
5
- *
6
- * This program is distributed in the hope that it will be useful,
7
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
8
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
9
- * GNU General Public License for more details.
10
- *
11
- * You should have received a copy of the GNU General Public License
12
- * along with this program; if not, write to the Free Software
13
- * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
143 *
154 * Copyright (C) 2010-2011 Freescale Semiconductor, Inc.
165 *
....@@ -445,9 +434,10 @@
445434 #endif
446435
447436 /* Switch to kernel stack and jump to handler. */
448
- PPC_LL r3, HOST_RUN(r1)
437
+ mr r3, r4
449438 mr r5, r14 /* intno */
450439 mr r14, r4 /* Save vcpu pointer. */
440
+ mr r4, r5
451441 bl kvmppc_handle_exit
452442
453443 /* Restore vcpu pointer and the nonvolatiles we used. */
....@@ -536,15 +526,14 @@
536526 blr
537527
538528 /* Registers:
539
- * r3: kvm_run pointer
540
- * r4: vcpu pointer
529
+ * r3: vcpu pointer
541530 */
542531 _GLOBAL(__kvmppc_vcpu_run)
543532 stwu r1, -HOST_STACK_SIZE(r1)
544
- PPC_STL r1, VCPU_HOST_STACK(r4) /* Save stack pointer to vcpu. */
533
+ PPC_STL r1, VCPU_HOST_STACK(r3) /* Save stack pointer to vcpu. */
545534
546535 /* Save host state to stack. */
547
- PPC_STL r3, HOST_RUN(r1)
536
+ mr r4, r3
548537 mflr r3
549538 mfcr r5
550539 PPC_STL r3, HOST_STACK_LR(r1)