Subject: Re: linux-next: Tree for Mar 11 (powerpc build failure due to vmx crypto code)

From: Guenter Roeck <[email-masked]>
Date: Wed, 11 Mar 2015 19:43:22 -0700

On 03/11/2015 06:23 PM, Herbert Xu wrote:
> On Wed, Mar 11, 2015 at 08:47:17AM -0700, Guenter Roeck wrote:
>>
>> Building powerpc:allmodconfig:
>>
>> ERROR: ".aes_p8_cbc_encrypt" [drivers/crypto/vmx/vmx-crypto.ko] undefined!
>> ERROR: ".aes_p8_set_encrypt_key" [drivers/crypto/vmx/vmx-crypto.ko] undefined!
>> ERROR: ".aes_p8_set_decrypt_key" [drivers/crypto/vmx/vmx-crypto.ko] undefined!
>> ERROR: ".gcm_init_p8" [drivers/crypto/vmx/vmx-crypto.ko] undefined!
>> ERROR: ".aes_p8_decrypt" [drivers/crypto/vmx/vmx-crypto.ko] undefined!
>> ERROR: ".aes_p8_encrypt" [drivers/crypto/vmx/vmx-crypto.ko] undefined!
>> ERROR: ".gcm_ghash_p8" [drivers/crypto/vmx/vmx-crypto.ko] undefined!
>> ERROR: ".aes_p8_ctr32_encrypt_blocks" [drivers/crypto/vmx/vmx-crypto.ko] undefined!
>>
>> Those functions are called but don't seem to be defined anywhere.
>
> They are meant to be generated by the perl scripts in that directory.
> Can you take a look at why those perl scripts didn't run or didn't
> function correctly?
>

It looks like the perl scripts do run - I see the .S files, and I do see .o files created.
But I still get the error.

Looking into the object files, I see

$ nm vmx-crypto.o | grep aes_p8_cbc_encrypt
0000000000000680 t .aes_p8_cbc_encrypt
                  U .aes_p8_cbc_encrypt
00000000000000a8 D aes_p8_cbc_encrypt

$ nm aesp8-ppc.o | grep aes_p8_cbc_encrypt
0000000000000680 t .aes_p8_cbc_encrypt
0000000000000060 D aes_p8_cbc_encrypt

In the assembler source, I see

.globl  aes_p8_cbc_encrypt

but no .globl for .aes_p8_cbc_encrypt.

Does that tell you anything ?

I also notice is that the .S files are not removed with "make mrproper"
but left behind. Seems to me that those files should be removed.

Guenter