# git rev-parse -q --verify b53ab70eaf6ce5df58a1985dcfcda07683255778^{commit} b53ab70eaf6ce5df58a1985dcfcda07683255778 already have revision, skipping fetch # git checkout -q -f -B kisskb b53ab70eaf6ce5df58a1985dcfcda07683255778 # git clean -qxdf # < git log -1 # commit b53ab70eaf6ce5df58a1985dcfcda07683255778 # Author: Linus Walleij # Date: Wed Aug 9 10:07:13 2023 +0200 # # powerpc: Make virt_to_pfn() a static inline # # Making virt_to_pfn() a static inline taking a strongly typed # (const void *) makes the contract of a passing a pointer of that # type to the function explicit and exposes any misuse of the # macro virt_to_pfn() acting polymorphic and accepting many types # such as (void *), (unitptr_t) or (unsigned long) as arguments # without warnings. # # Move the virt_to_pfn() and related functions below the # declaration of __pa() so it compiles. # # For symmetry do the same with pfn_to_kaddr(). # # As the file is included right into the linker file, we need # to surround the functions with ifndef __ASSEMBLY__ so we # don't cause compilation errors. # # The conversion moreover exposes the fact that pmd_page_vaddr() # was returning an unsigned long rather than a const void * as # could be expected, so all the sites defining pmd_page_vaddr() # had to be augmented as well. # # Finally the KVM code in book3s_64_mmu_hv.c was passing an # unsigned int to virt_to_phys() so fix that up with a cast so the # result compiles. # # Signed-off-by: Linus Walleij # Signed-off-by: Michael Ellerman # Link: https://msgid.link/20230809-virt-to-phys-powerpc-v1-1-12e912a7d439@linaro.org # < /opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux-ld --version # < git log --format=%s --max-count=1 b53ab70eaf6ce5df58a1985dcfcda07683255778 # make -s -j 32 ARCH=sparc64 O=/kisskb/build/powerpc-next_defconfig_sparc64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux- defconfig # < make -s -j 32 ARCH=sparc64 O=/kisskb/build/powerpc-next_defconfig_sparc64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux- help # make -s -j 32 ARCH=sparc64 O=/kisskb/build/powerpc-next_defconfig_sparc64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux- olddefconfig # make -s -j 32 ARCH=sparc64 O=/kisskb/build/powerpc-next_defconfig_sparc64-gcc12 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux- :1519:2: warning: #warning syscall clone3 not implemented [-Wcpp] /opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux-ld: warning: arch/sparc/vdso/vdso-note.o: missing .note.GNU-stack section implies executable stack /opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux-ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker /opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux-ld: warning: arch/sparc/vdso/vdso32/vdso-note.o: missing .note.GNU-stack section implies executable stack /opt/cross/kisskb/korg/gcc-12.2.0-nolibc/sparc64-linux/bin/sparc64-linux-ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker WARNING: modpost: EXPORT symbol "_mcount" [vmlinux] version generation failed, symbol will not be versioned. Is "_mcount" prototyped in ? kernel: arch/sparc/boot/image is ready kernel: arch/sparc/boot/zImage is ready Completed OK # rm -rf /kisskb/build/powerpc-next_defconfig_sparc64-gcc12 # Build took: 0:01:23.106678