Rama Bondan Prakoso rama982

rama982 pushed to a11 at rama982/kernel_xiaomi_lancelot

  • b940215a20 arm64: vdso32: Fix '--prefix=' value for newer versions of clang Newer versions of clang only look for $(COMPAT_GCC_TOOLCHAIN_DIR)as [1], rather than $(COMPAT_GCC_TOOLCHAIN_DIR)$(CROSS_COMPILE_COMPAT)as, resulting in the following build error: $ make -skj"$(nproc)" ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- \ CROSS_COMPILE_COMPAT=arm-linux-gnueabi- LLVM=1 O=out/aarch64 distclean \ defconfig arch/arm64/kernel/vdso32/ ... /home/nathan/cbl/toolchains/llvm-binutils/bin/as: unrecognized option '-EL' clang-12: error: assembler command failed with exit code 1 (use -v to see invocation) make[3]: *** [arch/arm64/kernel/vdso32/Makefile:181: arch/arm64/kernel/vdso32/note.o] Error 1 ... Adding the value of CROSS_COMPILE_COMPAT (adding notdir to account for a full path for CROSS_COMPILE_COMPAT) fixes this issue, which matches the solution done for the main Makefile [2]. [1]: https://github.com/llvm/llvm-project/commit/3452a0d8c17f7166f479706b293caf6ac76ffd90 [2]: https://lore.kernel.org/lkml/20200721173125.1273884-1-maskray@google.com/ Signed-off-by: Nathan Chancellor <natechancellor@gmail.com> Cc: stable@vger.kernel.org Link: https://github.com/ClangBuiltLinux/linux/issues/1099 Link: https://lore.kernel.org/r/20200723041509.400450-1-natechancellor@gmail.com Signed-off-by: Will Deacon <will@kernel.org> [dl: Backported to 4.14, depends on commit 38253a0ed057c49dde77588eef05fdcb4008ce0b ("vdso32: Invoke clang with correct path to GCC toolchain") from the Pixel 4 kernel] Signed-off-by: Danny Lin <danny@kdrag0n.dev> Signed-off-by: Rama Bondan Prakoso <ramanarubp@gmail.com>

3 years ago

rama982 pushed to a11 at rama982/kernel_xiaomi_lancelot

  • 01e7c6e7a8 ANDROID: generate_initcall_order.pl: Use two dash long options for llvm-nm Commit 96e9bc424475 ("[llvm-nm] Remove one-dash long options except -arch") in LLVM removed the one dash long options, which causes this script to fail and initcalls not to get ordered properly, which manifests as kernels crashing durin boot. Use the two dash long options as the LLVM commit mentions that the documentation and help text have always shown them over the one dash long versions. This is not an issue with the mainline LTO series as it used two dash long options. Change-Id: Iaef9f96af1d75b54eabc4bba38d2a3a58c3c2209 Fixes: 93185a915514 ("ANDROID: init: ensure initcall ordering with LTO") Link: https://github.com/llvm/llvm-project/commit/96e9bc42447531a20569e0a680c029837a4868d8 Link: https://github.com/ClangBuiltLinux/continuous-integration2/runs/3129736977?check_suite_focus=true Link: https://github.com/ClangBuiltLinux/continuous-integration2/runs/3129775494?check_suite_focus=true Link: https://github.com/ClangBuiltLinux/continuous-integration2/runs/3129863440?check_suite_focus=true Signed-off-by: Nathan Chancellor <nathan@kernel.org>
  • b0ca1a0f40 Clang/ThinLTO: Disable ThinLTO for performance impact Switching from full-LTO to ThinLTO has performance impact on PtsFirstPartyBenchmarksTestCases: - com.google.android.benchmark.pts.BinderPerfBenchmark - com.google.android.benchmark.pts.GoogleBenchmarkTest This patch disable ThinLTO in defconfig Bug: 148617312 Change-Id: I9bd73b9f90bfe7a3fb86ed4286a0f1804570afa0 Signed-off-by: lucaswei <lucaswei@google.com> Signed-off-by: Rama Bondan Prakoso <ramanarubp@gmail.com>
  • 866cde4732 block: zram: Fix compilation Signed-off-by: Rama Bondan Prakoso <ramanarubp@gmail.com>
  • 69ae7dc8a8 zram: writeback: convert to use fb_notifier Signed-off-by: Rama Bondan Prakoso <ramanarubp@gmail.com>
  • 921a6d8b78 zram: introduce automatic writeback zram will now writeback idle pages to the backing device automatically. If a page in zram is not accessed in wb_start_mins, it'll be written to the backing device when the device screen goes off. To prevent aggressive writebacks, time accounting is only done when touch events are present. Take this into consideration as wb_start_mins doesn't represent system uptime. This prevents aggressively writing back pages when the device is sleeping and slowdowns from handling page faults when the device wakes up (e.g., using the phone after waking up in the morning). Time accounting is now done with sched_clock() instead of ktime as we can tolerate scheduler's timer drifts. Signed-off-by: Park Ju Hyung <qkrwngud825@gmail.com>
  • View comparison for these 8 commits »

3 years ago

rama982 pushed to a11 at rama982/kernel_xiaomi_lancelot

  • 095753b46d lancelot: defconfig: Enable LLVM Polly This brings a 14% improvement in hackbench times without LTO and 10% with LTO, according to my new tests [1] on Proton Clang 11.0.0 build 20200307. Flags used: hackbench -pTl 4000 [1] https://docs.google.com/spreadsheets/d/1mhjyshujZz8jYI7dMoCe-yFbxymW-fWaC08vMhBbEmQ/edit?usp=sharing Signed-off-by: Danny Lin <danny@kdrag0n.dev> (cherry picked from commit 995c5d52b1057ca6caa22ecccc004fe9d2f4e14c)
  • 348617b7d3 kbuild: Add support for LLVM's Polly optimizer This adds support for compiling the kernel with optimizations offered by LLVM's polyhedral loop optimizer known as Polly, which can improve performance by improving cache locality in loops. Note that LLVM is not compiled with Polly by default -- it must be enabled explicitly. Signed-off-by: Danny Lin <danny@kdrag0n.dev> (cherry picked from commit ee3234eb558e1cee9a62ec28f2df6ec3cd73478c)
  • cfab9b9b3e kbuild: use LLVM integrated assembler for C files Now that all inline assembly can be assembled by LLVM's integrated assembler, lets use the integreated assembler for c files. Change-Id: Iad283c150a1553486f23587eb7f925fcadf2839e Signed-off-by: Stefan Agner <stefan@agner.ch> Signed-off-by: Adam W. Willis <return.of.octobot@gmail.com> Signed-off-by: Danny Lin <danny@kdrag0n.dev> (cherry picked from commit bbbe3f44183cad138d90475cfe64341107292e8e)
  • a574a954c3 Makefile: Set --lto-O3 LLD linker flag when building with clang LTO Signed-off-by: kdrag0n <dragon@khronodragon.com> Change-Id: I87faddd3bb5ca6e132ff3831bfddd2a0b4511fb9 (cherry picked from commit b6a19c0bec01073dbe69ab663da8c3b2138601aa)
  • 9043940cf2 arm64: relocatable: Tweak linker flags to yield a smaller Image with LLD Currently, there is a regression of 689 KiB in Image.gz's size when the kernel is linked with LLD. This is reduced to 213 KiB when we use -pie rather than -shared when invoking the linker. Unfortunately, ld.bfd dislikes this change and regresses in size by 163 KiB with -pie as compared to using -shared. To address this problem, we add checks so that -pie is used with LLD and -shared is used with ld.bfd. That way, both linkers are able to perform their best. List of Image.gz sizes: ld.bfd -shared: 10,066,988 bytes ld.bfd -pie: 10,230,316 bytes LLD -shared: 10,796,872 bytes LLD -pie: 10,280,168 bytes Test: kernel compiles and boots with both ld.bfd and LLD Signed-off-by: Danny Lin <danny@kdrag0n.dev> Signed-off-by: Adithya R <gh0strider.2k18.reborn@gmail.com> (cherry picked from commit 97ff527b6aed51ead7b0c47983e5bc1037d65c89)

3 years ago

rama982 created new branch a11 at rama982/kernel_xiaomi_lancelot

3 years ago

rama982 created repository rama982/kernel_xiaomi_lancelot

3 years ago