[v2,5/8] linux-user: move ppc socket.h definitions to ppc/sockbits.h

Message ID 20180516205543.29305-6-laurent@vivier.eu
State New
Headers show
Series
  • linux-user: move socket.h definitions to CPU directories
Related show

Commit Message

Laurent Vivier May 16, 2018, 8:55 p.m.
No code change.

Signed-off-by: Laurent Vivier <laurent@vivier.eu>
---
 linux-user/generic/sockbits.h |  9 +--------
 linux-user/ppc/sockbits.h     | 19 +++++++++++++++++++
 2 files changed, 20 insertions(+), 8 deletions(-)

Comments

Philippe Mathieu-Daudé May 16, 2018, 11:17 p.m. | #1
On 05/16/2018 05:55 PM, Laurent Vivier wrote:
> No code change.
> 
> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
> ---
>  linux-user/generic/sockbits.h |  9 +--------
>  linux-user/ppc/sockbits.h     | 19 +++++++++++++++++++
>  2 files changed, 20 insertions(+), 8 deletions(-)
> 
> diff --git a/linux-user/generic/sockbits.h b/linux-user/generic/sockbits.h
> index 093faf0a48..5ad43eb0c8 100644
> --- a/linux-user/generic/sockbits.h
> +++ b/linux-user/generic/sockbits.h
> @@ -30,14 +30,7 @@
>  #define TARGET_SO_LINGER       13
>  #define TARGET_SO_BSDCOMPAT    14
>  /* To add :#define TARGET_SO_REUSEPORT 15 */
> -#if defined(TARGET_PPC)
> -#define TARGET_SO_RCVLOWAT     16
> -#define TARGET_SO_SNDLOWAT     17
> -#define TARGET_SO_RCVTIMEO     18
> -#define TARGET_SO_SNDTIMEO     19
> -#define TARGET_SO_PASSCRED     20
> -#define TARGET_SO_PEERCRED     21
> -#else
> +#ifndef TARGET_SO_PASSCRED /* powerpc only differs in these */

#ifndef TARGET_PPC ?

>  #define TARGET_SO_PASSCRED     16
>  #define TARGET_SO_PEERCRED     17
>  #define TARGET_SO_RCVLOWAT     18
> diff --git a/linux-user/ppc/sockbits.h b/linux-user/ppc/sockbits.h
> index 0e4c8f012d..3593bc44ac 100644
> --- a/linux-user/ppc/sockbits.h
> +++ b/linux-user/ppc/sockbits.h
> @@ -1 +1,20 @@
> +/*
> + * This program is free software; you can redistribute it and/or modify
> + * it under the terms of the GNU General Public License version 2 as
> + * published by the Free Software Foundation, or (at your option) any
> + * later version. See the COPYING file in the top-level directory.
> + */
> +
> +#ifndef PPC_SOCKBITS_H
> +#define PPC_SOCKBITS_H
> +
> +#define TARGET_SO_RCVLOWAT     16
> +#define TARGET_SO_SNDLOWAT     17
> +#define TARGET_SO_RCVTIMEO     18
> +#define TARGET_SO_SNDTIMEO     19
> +#define TARGET_SO_PASSCRED     20
> +#define TARGET_SO_PEERCRED     21
> +
>  #include "../generic/sockbits.h"
> +
> +#endif
>
Laurent Vivier May 17, 2018, 7:17 a.m. | #2
Le 17/05/2018 à 01:17, Philippe Mathieu-Daudé a écrit :
> On 05/16/2018 05:55 PM, Laurent Vivier wrote:
>> No code change.
>>
>> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
>> ---
>>  linux-user/generic/sockbits.h |  9 +--------
>>  linux-user/ppc/sockbits.h     | 19 +++++++++++++++++++
>>  2 files changed, 20 insertions(+), 8 deletions(-)
>>
>> diff --git a/linux-user/generic/sockbits.h b/linux-user/generic/sockbits.h
>> index 093faf0a48..5ad43eb0c8 100644
>> --- a/linux-user/generic/sockbits.h
>> +++ b/linux-user/generic/sockbits.h
>> @@ -30,14 +30,7 @@
>>  #define TARGET_SO_LINGER       13
>>  #define TARGET_SO_BSDCOMPAT    14
>>  /* To add :#define TARGET_SO_REUSEPORT 15 */
>> -#if defined(TARGET_PPC)
>> -#define TARGET_SO_RCVLOWAT     16
>> -#define TARGET_SO_SNDLOWAT     17
>> -#define TARGET_SO_RCVTIMEO     18
>> -#define TARGET_SO_SNDTIMEO     19
>> -#define TARGET_SO_PASSCRED     20
>> -#define TARGET_SO_PEERCRED     21
>> -#else
>> +#ifndef TARGET_SO_PASSCRED /* powerpc only differs in these */
> 
> #ifndef TARGET_PPC ?

In fact, I have copied the line from linux, I think it's better to not
depend on the target but on the value we want to define.

Thanks,
Laurent
Philippe Mathieu-Daudé May 17, 2018, 3:24 p.m. | #3
On 05/17/2018 04:17 AM, Laurent Vivier wrote:
> Le 17/05/2018 à 01:17, Philippe Mathieu-Daudé a écrit :
>> On 05/16/2018 05:55 PM, Laurent Vivier wrote:
>>> No code change.
>>>
>>> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
>>> ---
>>>  linux-user/generic/sockbits.h |  9 +--------
>>>  linux-user/ppc/sockbits.h     | 19 +++++++++++++++++++
>>>  2 files changed, 20 insertions(+), 8 deletions(-)
>>>
>>> diff --git a/linux-user/generic/sockbits.h b/linux-user/generic/sockbits.h
>>> index 093faf0a48..5ad43eb0c8 100644
>>> --- a/linux-user/generic/sockbits.h
>>> +++ b/linux-user/generic/sockbits.h
>>> @@ -30,14 +30,7 @@
>>>  #define TARGET_SO_LINGER       13
>>>  #define TARGET_SO_BSDCOMPAT    14
>>>  /* To add :#define TARGET_SO_REUSEPORT 15 */
>>> -#if defined(TARGET_PPC)
>>> -#define TARGET_SO_RCVLOWAT     16
>>> -#define TARGET_SO_SNDLOWAT     17
>>> -#define TARGET_SO_RCVTIMEO     18
>>> -#define TARGET_SO_SNDTIMEO     19
>>> -#define TARGET_SO_PASSCRED     20
>>> -#define TARGET_SO_PEERCRED     21
>>> -#else
>>> +#ifndef TARGET_SO_PASSCRED /* powerpc only differs in these */
>>
>> #ifndef TARGET_PPC ?
> 
> In fact, I have copied the line from linux, I think it's better to not
> depend on the target but on the value we want to define.

I see, but it isn't safer to define each separately?

/* powerpc only differs in these */
#ifndef TARGET_SO_PASSCRED
# define TARGET_SO_PASSCRED     16
#endif

#ifndef TARGET_SO_PEERCRED
# define TARGET_SO_PEERCRED     17
#endif

#ifndef TARGET_SO_RCVLOWAT
# define TARGET_SO_RCVLOWAT     18
#endif

...

> 
> Thanks,
> Laurent
>
Laurent Vivier May 17, 2018, 3:35 p.m. | #4
Le 17/05/2018 à 17:24, Philippe Mathieu-Daudé a écrit :
> On 05/17/2018 04:17 AM, Laurent Vivier wrote:
>> Le 17/05/2018 à 01:17, Philippe Mathieu-Daudé a écrit :
>>> On 05/16/2018 05:55 PM, Laurent Vivier wrote:
>>>> No code change.
>>>>
>>>> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
>>>> ---
>>>>  linux-user/generic/sockbits.h |  9 +--------
>>>>  linux-user/ppc/sockbits.h     | 19 +++++++++++++++++++
>>>>  2 files changed, 20 insertions(+), 8 deletions(-)
>>>>
>>>> diff --git a/linux-user/generic/sockbits.h b/linux-user/generic/sockbits.h
>>>> index 093faf0a48..5ad43eb0c8 100644
>>>> --- a/linux-user/generic/sockbits.h
>>>> +++ b/linux-user/generic/sockbits.h
>>>> @@ -30,14 +30,7 @@
>>>>  #define TARGET_SO_LINGER       13
>>>>  #define TARGET_SO_BSDCOMPAT    14
>>>>  /* To add :#define TARGET_SO_REUSEPORT 15 */
>>>> -#if defined(TARGET_PPC)
>>>> -#define TARGET_SO_RCVLOWAT     16
>>>> -#define TARGET_SO_SNDLOWAT     17
>>>> -#define TARGET_SO_RCVTIMEO     18
>>>> -#define TARGET_SO_SNDTIMEO     19
>>>> -#define TARGET_SO_PASSCRED     20
>>>> -#define TARGET_SO_PEERCRED     21
>>>> -#else
>>>> +#ifndef TARGET_SO_PASSCRED /* powerpc only differs in these */
>>>
>>> #ifndef TARGET_PPC ?
>>
>> In fact, I have copied the line from linux, I think it's better to not
>> depend on the target but on the value we want to define.
> 
> I see, but it isn't safer to define each separately?
> 
> /* powerpc only differs in these */
> #ifndef TARGET_SO_PASSCRED
> # define TARGET_SO_PASSCRED     16
> #endif
> 
> #ifndef TARGET_SO_PEERCRED
> # define TARGET_SO_PEERCRED     17
> #endif
> 
> #ifndef TARGET_SO_RCVLOWAT
> # define TARGET_SO_RCVLOWAT     18
> #endif

The other way should be to remove the "#if" from generic/sockbits.h, to
include it in the top of ppc/sockbits.h and to #undef values before
redefining them.

It's cleaner, I think, but I like to stay as close as possible to the
kernel headers.

Thanks,
Laurent

Patch

diff --git a/linux-user/generic/sockbits.h b/linux-user/generic/sockbits.h
index 093faf0a48..5ad43eb0c8 100644
--- a/linux-user/generic/sockbits.h
+++ b/linux-user/generic/sockbits.h
@@ -30,14 +30,7 @@ 
 #define TARGET_SO_LINGER       13
 #define TARGET_SO_BSDCOMPAT    14
 /* To add :#define TARGET_SO_REUSEPORT 15 */
-#if defined(TARGET_PPC)
-#define TARGET_SO_RCVLOWAT     16
-#define TARGET_SO_SNDLOWAT     17
-#define TARGET_SO_RCVTIMEO     18
-#define TARGET_SO_SNDTIMEO     19
-#define TARGET_SO_PASSCRED     20
-#define TARGET_SO_PEERCRED     21
-#else
+#ifndef TARGET_SO_PASSCRED /* powerpc only differs in these */
 #define TARGET_SO_PASSCRED     16
 #define TARGET_SO_PEERCRED     17
 #define TARGET_SO_RCVLOWAT     18
diff --git a/linux-user/ppc/sockbits.h b/linux-user/ppc/sockbits.h
index 0e4c8f012d..3593bc44ac 100644
--- a/linux-user/ppc/sockbits.h
+++ b/linux-user/ppc/sockbits.h
@@ -1 +1,20 @@ 
+/*
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation, or (at your option) any
+ * later version. See the COPYING file in the top-level directory.
+ */
+
+#ifndef PPC_SOCKBITS_H
+#define PPC_SOCKBITS_H
+
+#define TARGET_SO_RCVLOWAT     16
+#define TARGET_SO_SNDLOWAT     17
+#define TARGET_SO_RCVTIMEO     18
+#define TARGET_SO_SNDTIMEO     19
+#define TARGET_SO_PASSCRED     20
+#define TARGET_SO_PEERCRED     21
+
 #include "../generic/sockbits.h"
+
+#endif