]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - queue-4.4/powerpc-rfi-flush-call-setup_rfi_flush-after-lpm-migration.patch
4.4-stable patches
[thirdparty/kernel/stable-queue.git] / queue-4.4 / powerpc-rfi-flush-call-setup_rfi_flush-after-lpm-migration.patch
1 From foo@baz Mon 29 Apr 2019 11:38:37 AM CEST
2 From: Michael Ellerman <mpe@ellerman.id.au>
3 Date: Mon, 22 Apr 2019 00:19:55 +1000
4 Subject: powerpc/rfi-flush: Call setup_rfi_flush() after LPM migration
5 To: stable@vger.kernel.org, gregkh@linuxfoundation.org
6 Cc: linuxppc-dev@ozlabs.org, diana.craciun@nxp.com, msuchanek@suse.de, npiggin@gmail.com, christophe.leroy@c-s.fr
7 Message-ID: <20190421142037.21881-11-mpe@ellerman.id.au>
8
9 From: Michael Ellerman <mpe@ellerman.id.au>
10
11 commit 921bc6cf807ceb2ab8005319cf39f33494d6b100 upstream.
12
13 We might have migrated to a machine that uses a different flush type,
14 or doesn't need flushing at all.
15
16 Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
17 Signed-off-by: Mauricio Faria de Oliveira <mauricfo@linux.vnet.ibm.com>
18 Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
19 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
20 ---
21 arch/powerpc/platforms/pseries/mobility.c | 3 +++
22 arch/powerpc/platforms/pseries/pseries.h | 2 ++
23 arch/powerpc/platforms/pseries/setup.c | 2 +-
24 3 files changed, 6 insertions(+), 1 deletion(-)
25
26 --- a/arch/powerpc/platforms/pseries/mobility.c
27 +++ b/arch/powerpc/platforms/pseries/mobility.c
28 @@ -314,6 +314,9 @@ void post_mobility_fixup(void)
29 printk(KERN_ERR "Post-mobility device tree update "
30 "failed: %d\n", rc);
31
32 + /* Possibly switch to a new RFI flush type */
33 + pseries_setup_rfi_flush();
34 +
35 return;
36 }
37
38 --- a/arch/powerpc/platforms/pseries/pseries.h
39 +++ b/arch/powerpc/platforms/pseries/pseries.h
40 @@ -81,4 +81,6 @@ extern struct pci_controller_ops pseries
41
42 unsigned long pseries_memory_block_size(void);
43
44 +void pseries_setup_rfi_flush(void);
45 +
46 #endif /* _PSERIES_PSERIES_H */
47 --- a/arch/powerpc/platforms/pseries/setup.c
48 +++ b/arch/powerpc/platforms/pseries/setup.c
49 @@ -499,7 +499,7 @@ static void __init find_and_init_phbs(vo
50 of_pci_check_probe_only();
51 }
52
53 -static void pseries_setup_rfi_flush(void)
54 +void pseries_setup_rfi_flush(void)
55 {
56 struct h_cpu_char_result result;
57 enum l1d_flush_type types;