Skip to contentSkip to conversation

2.6.18 compile problem: undefined reference to crypto_tfm_ctx_offset

uml-devel Sven Köhler 2 participants 2 messages Oct 1, 2006 User-mode Linux (UML)

lore
Share & tools
lore
#0 lore raw

I get this error:

# LANG=C make ARCH=um vmlinux
make[1]: `arch/um/sys-i386/user-offsets.s' is up to date.

  CHK     include/linux/version.h
  CHK     include/linux/utsrelease.h
  CHK     include/linux/compile.h
  GEN     .version
  CHK     include/linux/compile.h
  UPD     include/linux/compile.h
  CC      init/version.o
  LD      init/built-in.o
  LD      .tmp_vmlinux1

arch/i386/crypto/built-in.o: In function `aes_enc_blk':
aes.c:(.text+0xd): undefined reference to crypto_tfm_ctx_offset' arch/i386/crypto/built-in.o: In function aes_dec_blk':
aes.c:(.text+0xb95): undefined reference to crypto_tfm_ctx_offset' aes.c:(.text+0xb9c): undefined reference to crypto_tfm_ctx_offset'
collect2: ld returned 1 exit status
KSYM .tmp_kallsyms1.S
nm: '.tmp_vmlinux1': No such file
No valid symbol.
make: *** [.tmp_kallsyms1.S] Error 1

I guess, i just have to disable some crypto-stuff, but i wanted to inform you about that.

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

#1 lore raw
Quoted 26 lines · Sven Köhler

I get this error:

# LANG=C make ARCH=um vmlinux
make[1]: `arch/um/sys-i386/user-offsets.s' is up to date.

  CHK     include/linux/version.h
  CHK     include/linux/utsrelease.h
  CHK     include/linux/compile.h
  GEN     .version
  CHK     include/linux/compile.h
  UPD     include/linux/compile.h
  CC      init/version.o
  LD      init/built-in.o
  LD      .tmp_vmlinux1

arch/i386/crypto/built-in.o: In function `aes_enc_blk':
aes.c:(.text+0xd): undefined reference to crypto_tfm_ctx_offset' arch/i386/crypto/built-in.o: In function aes_dec_blk':
aes.c:(.text+0xb95): undefined reference to crypto_tfm_ctx_offset' aes.c:(.text+0xb9c): undefined reference to crypto_tfm_ctx_offset'
collect2: ld returned 1 exit status
KSYM .tmp_kallsyms1.S
nm: '.tmp_vmlinux1': No such file
No valid symbol.
make: *** [.tmp_kallsyms1.S] Error 1

Quoted 2 lines

I guess, i just have to disable some crypto-stuff, but i wanted to inform you about that.

I fixed this a few days ago, and the fix is in 2.6.18-bb1 (tell me if I forgot to upload it). It is the one attached but I do not remember if it applies by itself or has dependencies, so try -bb1.

Signature · 3 lines
Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!".
Paolo Giarrusso, aka Blaisorblade
http://www.user-mode-linux.org/~blaisorblade
arch/um/Makefile-x86_64 +1 -1
Index: linux-2.6.git/arch/um/Makefile-x86_64
===================================================================
@@ -1,7 +1,7 @@
 # Copyright 2003 - 2004 Pathscale, Inc
 # Released under the GPL
 
-core-y += arch/um/sys-x86_64/
+core-y += arch/um/sys-x86_64/ arch/x86_64/crypto/
 START := 0x60000000
 
 #We #undef __x86_64__ for kernelspace, not for userspace where
arch/um/include/common-offsets.h +1 -0
Index: linux-2.6.git/arch/um/include/common-offsets.h
===================================================================
@@ -15,3 +15,4 @@ DEFINE_STR(UM_KERN_DEBUG, KERN_DEBUG);
 DEFINE(UM_ELF_CLASS, ELF_CLASS);
 DEFINE(UM_ELFCLASS32, ELFCLASS32);
 DEFINE(UM_ELFCLASS64, ELFCLASS64);
+DEFINE(crypto_tfm_ctx_offset, offsetof(struct crypto_tfm, __crt_ctx));
arch/um/include/sysdep-i386/kernel-offsets.h +1 -0
Index: linux-2.6.git/arch/um/include/sysdep-i386/kernel-offsets.h
===================================================================
@@ -1,6 +1,7 @@
 #include <linux/stddef.h>
 #include <linux/sched.h>
 #include <linux/elf.h>
+#include <linux/crypto.h>
 #include <asm/mman.h>
 
 #define DEFINE(sym, val) \
arch/um/include/sysdep-x86_64/kernel-offsets.h +1 -0
Index: linux-2.6.git/arch/um/include/sysdep-x86_64/kernel-offsets.h
===================================================================
@@ -2,6 +2,7 @@
 #include <linux/sched.h>
 #include <linux/time.h>
 #include <linux/elf.h>
+#include <linux/crypto.h>
 #include <asm/page.h>
 #include <asm/mman.h>
 

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV

_______________________________________________
User-mode-linux-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel