Comment 15 for bug 1572624

Revision history for this message
bugproxy (bugproxy) wrote : Comment bridged from LTC Bugzilla

------- Comment From <email address hidden> 2016-06-12 23:14 EDT-------
(In reply to comment #13)
> Default Comment by Bridge
>
> This patch does not work for a 3.13 kernel.
>
> ubuntu-trusty/arch/powerpc/include/asm/tm.h: Assembler messages:
> ubuntu-trusty/arch/powerpc/include/asm/tm.h:11: Error: unrecognized opcode:
> `extern'

(In reply to comment #14)
> Tim,
>
> I suspect you're using the first version of the patch.
> The last version is available in comment #2 and is called
> 0001-powerpc-tm-backport-b4b56f-to-Abort-syscalls-in-acti.patch
>
> > This patch does not work for a 3.13 kernel.
> >
> > ubuntu-trusty/arch/powerpc/include/asm/tm.h: Assembler messages:
> > ubuntu-trusty/arch/powerpc/include/asm/tm.h:11: Error: unrecognized opcode:
> > `extern'
>
> It seems that CONFIG_PPC_TRANSACTIONAL_MEM started to be defined.
> Could you provide more context on this error message, please?
>
> Wei, any suggestions how to proceed with this?

The error was fixed by following line(commit e4e38121):
#include <uapi/asm/tm.h>
+#ifndef __ASSEMBLY__
+
#ifdef CONFIG_PPC_TRANSACTIONAL_MEM
extern void do_load_up_transact_fpu(struct thread_struct *thread);

Since the tm.h can be included by an assembly and GAS will fail to parse the C specific identifier like "extern".

I doubt why we need to compile against 3.13 since Ubuntu14.04.3 is already with kernel 3.19 ( and 3.19 includes e4e38121).

I guess we are OK now per comment 15# (compile against 3.19). But please let me know if I have some misunderstanding.