From d883c28eac2fc77a4df91678f558ef32d1e4bc0e Mon Sep 17 00:00:00 2001 From: Wolfgang Wiedmeyer Date: Fri, 9 Dec 2016 18:35:23 +0100 Subject: mm: Disable optimization for function shrink_page_list() GCC version 5.4.1+svn241155-1 in Debian Stretch has a bug that breaks the build. The error is attached. TODO: Gigure out the actual bug or revert patch if a newer GCC is available in Stretch. /home/wolfi/6.0-romsrc/kernel/samsung/smdk4412/mm/vmscan.c: In function 'shrink_page_list': /home/wolfi/6.0-romsrc/kernel/samsung/smdk4412/mm/vmscan.c:1019:1: error: insn does not satisfy its constraints: } ^ (insn 1111 1814 1112 116 (parallel [ (set (reg/v:SI 3 r3 [orig:111 nr_dirty ] [111]) (and:SI (ne:SI (reg/v:SI 3 r3 [orig:111 nr_dirty ] [111]) (const_int 0 [0])) (eq:SI (reg/v:SI 3 r3 [orig:111 nr_dirty ] [111]) (reg/v:SI 2 r2 [orig:112 nr_congested ] [112])))) (clobber (reg:CC 100 cc)) ]) /home/wolfi/6.0-romsrc/kernel/samsung/smdk4412/mm/vmscan.c:1011 256 {*and_scc_scc_nodom} (nil)) /home/wolfi/6.0-romsrc/kernel/samsung/smdk4412/mm/vmscan.c:1019:1: internal compiler error: in extract_constrain_insn, at recog.c:2246 /home/wolfi/6.0-romsrc/kernel/samsung/smdk4412/mm/vmscan.c:1019:1: internal compiler error: Segmentation fault arm-none-eabi-gcc: internal compiler error: Segmentation fault (program cc1) Signed-off-by: Wolfgang Wiedmeyer --- mm/vmscan.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/mm/vmscan.c b/mm/vmscan.c index 0d1eb7eea19..ce6e2e57ad9 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -771,6 +771,7 @@ static noinline_for_stack void free_page_list(struct list_head *free_pages) pagevec_free(&freed_pvec); } +#pragma GCC optimize ("O0") /* * shrink_page_list() returns the number of reclaimed pages */ @@ -1018,6 +1019,7 @@ keep_lumpy: count_vm_events(PGACTIVATE, pgactivate); return nr_reclaimed; } +#pragma GCC reset_options /* * Attempt to remove the specified page from its LRU. Only take this page -- cgit v1.2.3