linuxppc-dev.lists.ozlabs.org archive mirror
 help / color / mirror / Atom feed
From: Mathieu Malaterre <malat@debian.org>
To: LEROY Christophe <christophe.leroy@c-s.fr>
Cc: linuxppc-dev <linuxppc-dev@lists.ozlabs.org>,
	Paul Mackerras <paulus@samba.org>,
	kvm-ppc@vger.kernel.org, LKML <linux-kernel@vger.kernel.org>,
	Michael Ellerman <mpe@ellerman.id.au>
Subject: Re: [PATCH 14/19] powerpc/altivec: Add missing prototypes for altivec
Date: Tue, 27 Mar 2018 10:39:52 +0200	[thread overview]
Message-ID: <CA+7wUszsJUJJeb+xhzjGr8YxDt-BYruBwda7Dq-nFfyt0sU0ew@mail.gmail.com> (raw)
In-Reply-To: <20180324211020.Horde.kEO4b3mHPV88FKM0OiRT0Q1@messagerie.si.c-s.fr>

Christophe,

On Sat, Mar 24, 2018 at 9:10 PM, LEROY Christophe
<christophe.leroy@c-s.fr> wrote:
> Mathieu Malaterre <malat@debian.org> a =C3=A9crit :
>
>
>> On Fri, Mar 23, 2018 at 1:19 PM, christophe leroy
>> <christophe.leroy@c-s.fr> wrote:
>>>
>>>
>>>
>>> Le 22/03/2018 =C3=A0 21:20, Mathieu Malaterre a =C3=A9crit :
>>>>
>>>>
>>>> Some functions prototypes were missing for the non-altivec code. Add t=
he
>>>> missing prototypes directly in xor_vmx, fix warnings treated as errors
>>>> with
>>>> W=3D1:
>>>>
>>>>    arch/powerpc/lib/xor_vmx_glue.c:18:6: error: no previous prototype
>>>> for
>>>> =E2=80=98xor_altivec_2=E2=80=99 [-Werror=3Dmissing-prototypes]
>>>>    arch/powerpc/lib/xor_vmx_glue.c:29:6: error: no previous prototype
>>>> for
>>>> =E2=80=98xor_altivec_3=E2=80=99 [-Werror=3Dmissing-prototypes]
>>>>    arch/powerpc/lib/xor_vmx_glue.c:40:6: error: no previous prototype
>>>> for
>>>> =E2=80=98xor_altivec_4=E2=80=99 [-Werror=3Dmissing-prototypes]
>>>>    arch/powerpc/lib/xor_vmx_glue.c:52:6: error: no previous prototype
>>>> for
>>>> =E2=80=98xor_altivec_5=E2=80=99 [-Werror=3Dmissing-prototypes]
>>>>
>>>> Signed-off-by: Mathieu Malaterre <malat@debian.org>
>>>> ---
>>>>   arch/powerpc/lib/xor_vmx.h | 14 ++++++++++++++
>>>>   1 file changed, 14 insertions(+)
>>>>
>>>> diff --git a/arch/powerpc/lib/xor_vmx.h b/arch/powerpc/lib/xor_vmx.h
>>>> index 5c2b0839b179..2173e3c84151 100644
>>>> --- a/arch/powerpc/lib/xor_vmx.h
>>>> +++ b/arch/powerpc/lib/xor_vmx.h
>>>> @@ -19,3 +19,17 @@ void __xor_altivec_4(unsigned long bytes, unsigned
>>>> long
>>>> *v1_in,
>>>>   void __xor_altivec_5(unsigned long bytes, unsigned long *v1_in,
>>>>                              unsigned long *v2_in, unsigned long *v3_i=
n,
>>>>                              unsigned long *v4_in, unsigned long
>>>> *v5_in);
>>>> +
>>>> +void xor_altivec_2(unsigned long bytes, unsigned long *v1_in,
>>>> +                            unsigned long *v2_in);
>>>> +
>>>
>>>
>>>
>>> Only used in one place, should be static instead of adding it in a .h
>>>
>>> Same for the other ones.
>>
>>
>> $ git grep xor_altivec_2
>> [...]
>> arch/powerpc/lib/xor_vmx_glue.c:EXPORT_SYMBOL(xor_altivec_2);
>>
>> Are you sure I can change this function to static ?
>
>
> Yes you are right.  But in fact those fonctions are already defined in
> asm/xor. h
> So you just need to add the missing #include

I originally tried it, but this leads to:

  CC      arch/powerpc/lib/xor_vmx_glue.o
In file included from arch/powerpc/lib/xor_vmx_glue.c:16:0:
./arch/powerpc/include/asm/xor.h:39:15: error: variable
=E2=80=98xor_block_altivec=E2=80=99 has initializer but incomplete type
 static struct xor_block_template xor_block_altivec =3D {
               ^~~~~~~~~~~~~~~~~~
./arch/powerpc/include/asm/xor.h:40:2: error: unknown field =E2=80=98name=
=E2=80=99
specified in initializer
  .name =3D "altivec",
  ^
[...]

The file <asm/xor.h> (powerpc) is pretty much expected to be included
after <include/linux/raid/xor.h>.

I did not want to tweak <asm/xor.h> to test for #ifdef _XOR_H just before

#ifdef _XOR_H
static struct xor_block_template xor_block_altivec =3D {
[...]

since this seems like a hack to me.

Is this ok to test for #ifdef _XOR_H in <arch/powerpc/include/asm/xor.h> ?

> Christophe
>
>
>>
>>> Christophe
>>>
>>>
>>>> +void xor_altivec_3(unsigned long bytes, unsigned long *v1_in,
>>>> +                            unsigned long *v2_in, unsigned long
>>>> *v3_in);
>>>> +
>>>> +void xor_altivec_4(unsigned long bytes, unsigned long *v1_in,
>>>> +                            unsigned long *v2_in, unsigned long *v3_i=
n,
>>>> +                            unsigned long *v4_in);
>>>> +
>>>> +void xor_altivec_5(unsigned long bytes, unsigned long *v1_in,
>>>> +                            unsigned long *v2_in, unsigned long *v3_i=
n,
>>>> +                            unsigned long *v4_in, unsigned long
>>>> *v5_in);
>>>>
>>>
>>> ---
>>> L'absence de virus dans ce courrier =C3=A9lectronique a =C3=A9t=C3=A9 v=
=C3=A9rifi=C3=A9e par le
>>> logiciel antivirus Avast.
>>> https://www.avast.com/antivirus
>>>
>
>

  reply	other threads:[~2018-03-27  8:40 UTC|newest]

Thread overview: 98+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-22 20:19 [PATCH 00/19] powerpc/ppc32: make W=1 compilation errors free Mathieu Malaterre
2018-03-22 20:19 ` [PATCH 01/19] powerpc/powermac: Mark variable x as unused Mathieu Malaterre
2018-03-23  9:18   ` christophe leroy
2018-03-28 19:27   ` [PATCH v2 " Mathieu Malaterre
2018-03-29 16:07     ` LEROY Christophe
2018-04-04 20:21       ` Mathieu Malaterre
2018-04-04 20:07     ` [PATCH v3 " Mathieu Malaterre
2018-04-24 14:12       ` Christophe LEROY
2018-05-25 11:41       ` [v3,01/19] " Michael Ellerman
2018-03-22 20:19 ` [PATCH 02/19] " Mathieu Malaterre
2018-03-23  9:38   ` christophe leroy
2018-03-28 19:30   ` [PATCH v2 " Mathieu Malaterre
2018-03-29 16:09     ` LEROY Christophe
2018-06-22  9:46       ` Mathieu Malaterre
2018-08-13 11:22     ` [v2,02/19] " Michael Ellerman
2018-03-22 20:19 ` [PATCH 03/19] powerpc: Mark variables " Mathieu Malaterre
2018-03-23 10:03   ` christophe leroy
2018-03-28 19:33   ` [PATCH v2 " Mathieu Malaterre
2018-03-29 16:14     ` LEROY Christophe
2018-04-05  5:57       ` Michael Ellerman
2018-04-05  7:01         ` LEROY Christophe
2018-04-04 20:08     ` [PATCH v3 03/19] powerpc: Move `path` variable inside DEBUG_PROM Mathieu Malaterre
2018-06-22  9:48       ` Mathieu Malaterre
2018-08-13 11:22       ` [v3,03/19] " Michael Ellerman
2018-04-05 20:26   ` [PATCH v4 03/19] powerpc: Mark variable `l` as unused, remove `path` Mathieu Malaterre
2018-04-06 15:33     ` LEROY Christophe
2018-04-06 18:32       ` Mathieu Malaterre
2018-04-24 19:20         ` christophe leroy
2018-03-22 20:19 ` [PATCH 04/19] powerpc/kvm: Mark variable tmp unused Mathieu Malaterre
2018-03-23 10:08   ` christophe leroy
2018-03-28 19:58   ` [PATCH v2 04/19] powerpc/kvm: Prefer fault_in_pages_readable function Mathieu Malaterre
2018-03-29 16:18     ` LEROY Christophe
2018-05-25  1:59     ` [v2,04/19] " Michael Ellerman
2018-03-22 20:19 ` [PATCH 05/19] powerpc/chrp/setup: Add attribute unused and make some functions static Mathieu Malaterre
2018-03-23 11:01   ` christophe leroy
2018-03-28 19:35   ` [PATCH v2 " Mathieu Malaterre
2018-03-29 16:16     ` LEROY Christophe
2018-04-04 20:09     ` [PATCH v3 05/19] powerpc/chrp/setup: Remove idu_size variable " Mathieu Malaterre
2018-05-25 11:41       ` [v3, " Michael Ellerman
2018-03-22 20:19 ` [PATCH 06/19] powerpc: Make function btext_initialize static Mathieu Malaterre
2018-05-25 11:41   ` [06/19] " Michael Ellerman
2018-03-22 20:19 ` [PATCH 07/19] powerpc/powermac: Make some functions static Mathieu Malaterre
2018-03-23 11:05   ` christophe leroy
2018-03-28 19:39   ` [PATCH v2 " Mathieu Malaterre
2018-06-22 11:29     ` Mathieu Malaterre
2018-08-13 11:22     ` [v2,07/19] " Michael Ellerman
2018-03-22 20:19 ` [PATCH 08/19] powerpc/tau: Make some function static Mathieu Malaterre
2018-05-25 11:41   ` [08/19] " Michael Ellerman
2018-03-22 20:19 ` [PATCH 09/19] powerpc/chrp/pci: Make some functions static Mathieu Malaterre
2018-04-04 20:15   ` [PATCH v3 " Mathieu Malaterre
2018-05-25 11:41     ` [v3,09/19] " Michael Ellerman
2018-03-22 20:19 ` [PATCH 10/19] powerpc/chrp/time: Make some functions static, add missing header include Mathieu Malaterre
2018-05-25 11:41   ` [10/19] " Michael Ellerman
2018-03-22 20:19 ` [PATCH 11/19] powerpc/powermac: Move pmac_pfunc_base_install prototype to header file Mathieu Malaterre
2018-03-23 12:13   ` christophe leroy
2018-03-28 19:11     ` Mathieu Malaterre
2018-03-29 15:51       ` LEROY Christophe
2018-04-04 20:13   ` [PATCH v3 " Mathieu Malaterre
2018-05-25 11:41     ` [v3, " Michael Ellerman
2018-03-22 20:19 ` [PATCH 12/19] powerpc/powermac: Add missing prototype for note_bootable_part() Mathieu Malaterre
2018-03-23 12:14   ` christophe leroy
2018-04-04 20:13   ` [PATCH v3 " Mathieu Malaterre
2018-05-25 11:41     ` [v3, " Michael Ellerman
2018-03-22 20:19 ` [PATCH 13/19] powerpc/52xx: Add missing functions prototypes Mathieu Malaterre
2018-03-23 12:18   ` christophe leroy
2018-04-04 20:12   ` [PATCH v3 " Mathieu Malaterre
2018-05-25 11:41     ` [v3,13/19] " Michael Ellerman
2018-03-22 20:20 ` [PATCH 14/19] powerpc/altivec: Add missing prototypes for altivec Mathieu Malaterre
2018-03-23 12:19   ` christophe leroy
2018-03-23 12:24     ` Mathieu Malaterre
2018-03-24 20:10       ` LEROY Christophe
2018-03-27  8:39         ` Mathieu Malaterre [this message]
2018-03-27 15:58           ` LEROY Christophe
2018-03-27 17:33             ` LEROY Christophe
2018-03-28  7:26               ` Mathieu Malaterre
2018-03-28 11:53                 ` Mathieu Malaterre
2018-03-28 18:47   ` [PATCH v2] " Mathieu Malaterre
2018-03-28 18:55   ` [PATCH v3] " Mathieu Malaterre
2018-05-25 11:41     ` [v3] " Michael Ellerman
2018-03-22 20:20 ` [PATCH 15/19] powerpc: Add missing prototype Mathieu Malaterre
2018-03-23 12:20   ` christophe leroy
2018-03-28 19:13     ` Mathieu Malaterre
2018-03-29 16:02       ` LEROY Christophe
2018-04-04 20:18         ` Mathieu Malaterre
2018-04-04 20:11   ` [PATCH v3 " Mathieu Malaterre
2018-05-25 11:41     ` [v3,15/19] " Michael Ellerman
2018-03-22 20:20 ` [PATCH 16/19] powerpc/powermac: Add missing include of header pmac.h Mathieu Malaterre
2018-06-22  9:49   ` Mathieu Malaterre
2018-08-13 11:22   ` [16/19] " Michael Ellerman
2018-03-22 20:20 ` [PATCH 17/19] powerpc/32: Add a missing include header Mathieu Malaterre
2018-05-25 11:41   ` [17/19] " Michael Ellerman
2018-03-22 20:20 ` [PATCH 18/19] powerpc: " Mathieu Malaterre
2018-05-25 11:41   ` [18/19] " Michael Ellerman
2018-03-22 20:20 ` [PATCH 19/19] powerpc/tau: Synchronize function prototypes and body Mathieu Malaterre
2018-03-23 12:22   ` christophe leroy
2018-04-04 20:10   ` [PATCH v3 " Mathieu Malaterre
2018-05-25 11:41     ` [v3,19/19] " Michael Ellerman
2018-05-22  6:28 ` [PATCH 00/19] powerpc/ppc32: make W=1 compilation errors free Mathieu Malaterre

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CA+7wUszsJUJJeb+xhzjGr8YxDt-BYruBwda7Dq-nFfyt0sU0ew@mail.gmail.com \
    --to=malat@debian.org \
    --cc=christophe.leroy@c-s.fr \
    --cc=kvm-ppc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mpe@ellerman.id.au \
    --cc=paulus@samba.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).