Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

powerpc: Exported functions __clear_user and copy_page use r2 so need _GLOBAL_TOC()

__clear_user and copy_page load from the TOC and are also exported
to modules. This means we have to use _GLOBAL_TOC() so that we
create the global entry point that sets up the TOC.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>

authored by

Anton Blanchard and committed by
Benjamin Herrenschmidt
2ac7b016 6d97d7a2

+2 -2
+1 -1
arch/powerpc/lib/copypage_64.S
··· 16 16 .tc ppc64_caches[TC],ppc64_caches 17 17 .section ".text" 18 18 19 - _GLOBAL(copy_page) 19 + _GLOBAL_TOC(copy_page) 20 20 BEGIN_FTR_SECTION 21 21 lis r5,PAGE_SIZE@h 22 22 FTR_SECTION_ELSE
+1 -1
arch/powerpc/lib/string_64.S
··· 77 77 mr r3,r4 78 78 blr 79 79 80 - _GLOBAL(__clear_user) 80 + _GLOBAL_TOC(__clear_user) 81 81 cmpdi r4,32 82 82 neg r6,r3 83 83 li r0,0