On Mon, May 8, 2017 at 9:55 PM, Arnd Bergmann <arnd@xxxxxxxx> wrote: > From: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> > > Commit 5008efc83bf85b647aa1cbc44718b1675bbb7444 upstream. > > The PJ4 inline asm sequence to write to cp15 cannot be built in Thumb-2 > mode, due to the way it performs arithmetic on the program counter, so it > is built in ARM mode instead. However, building C files in ARM mode under > CONFIG_THUMB2_KERNEL is problematic, since the instrumentation performed > by subsystems like ftrace does not expect having to deal with interworking > branches. > > Since the sequence in question is simply a poor man's ISB instruction, > let's use a straight 'isb' instead when building in Thumb2 mode. Thumb2 > implies V7, so 'isb' should always be supported in that case. > > Acked-by: Arnd Bergmann <arnd@xxxxxxxx> > Acked-by: Nicolas Pitre <nico@xxxxxxxxxx> > Signed-off-by: Ard Biesheuvel <ard.biesheuvel@xxxxxxxxxx> > Signed-off-by: Russell King <rmk+kernel@xxxxxxxxxxxxxxxx> > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> > --- > Hi Greg, > > As Ard pointed out, commit 13d1b9575ac2c2da ("ARM: 8221/1: PJ4: allow > building in Thumb-2 mode") which I suggested for backports into > 3.16 is broken unless we also take this one. > > I checked the other stable branches and found that both 3.18 and > 4.4 contain only the first of the two, so please apply this one on > both branches as well. Clarification: please apply this patch from email on 3.18.y and cherry-pick the original 5008efc83bf85b6 on 4.4.y to avoid rebasing yourself. Arnd