[PATCH resend] uapi: fix linux/nfc.h userspace compilation errors

Dmitry V. Levin posted 1 patch 4 years, 6 months ago
include/uapi/linux/nfc.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[PATCH resend] uapi: fix linux/nfc.h userspace compilation errors
Posted by Dmitry V. Levin 4 years, 6 months ago
Replace sa_family_t with __kernel_sa_family_t to fix the following
linux/nfc.h userspace compilation errors:

/usr/include/linux/nfc.h:266:2: error: unknown type name 'sa_family_t'
  sa_family_t sa_family;
/usr/include/linux/nfc.h:274:2: error: unknown type name 'sa_family_t'
  sa_family_t sa_family;

Link: https://lore.kernel.org/lkml/20170220181613.GB11185@altlinux.org/
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
---
 The patch was submitted almost 5 years ago, and I was under impression
 that it was applied among others of this kind, but, apparently,
 it's still relevant.

 include/uapi/linux/nfc.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/uapi/linux/nfc.h b/include/uapi/linux/nfc.h
index f6e3c8c9c744..aadad43d943a 100644
--- a/include/uapi/linux/nfc.h
+++ b/include/uapi/linux/nfc.h
@@ -263,7 +263,7 @@ enum nfc_sdp_attr {
 #define NFC_SE_ENABLED  0x1
 
 struct sockaddr_nfc {
-	sa_family_t sa_family;
+	__kernel_sa_family_t sa_family;
 	__u32 dev_idx;
 	__u32 target_idx;
 	__u32 nfc_protocol;
@@ -271,7 +271,7 @@ struct sockaddr_nfc {
 
 #define NFC_LLCP_MAX_SERVICE_NAME 63
 struct sockaddr_nfc_llcp {
-	sa_family_t sa_family;
+	__kernel_sa_family_t sa_family;
 	__u32 dev_idx;
 	__u32 target_idx;
 	__u32 nfc_protocol;

-- 
ldv
Re: [PATCH resend] uapi: fix linux/nfc.h userspace compilation errors
Posted by Krzysztof Kozlowski 4 years, 6 months ago
On 26/12/2021 00:42, Dmitry V. Levin wrote:
> Replace sa_family_t with __kernel_sa_family_t to fix the following
> linux/nfc.h userspace compilation errors:
> 
> /usr/include/linux/nfc.h:266:2: error: unknown type name 'sa_family_t'
>   sa_family_t sa_family;
> /usr/include/linux/nfc.h:274:2: error: unknown type name 'sa_family_t'
>   sa_family_t sa_family;
> 
> Link: https://lore.kernel.org/lkml/20170220181613.GB11185@altlinux.org/

Please skip the link. There will be link added for current patch which
leads to this discussion. There was no discussion in 2017.

> Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
> ---
>  The patch was submitted almost 5 years ago, and I was under impression
>  that it was applied among others of this kind, but, apparently,
>  it's still relevant.
> 
>  include/uapi/linux/nfc.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/include/uapi/linux/nfc.h b/include/uapi/linux/nfc.h
> index f6e3c8c9c744..aadad43d943a 100644
> --- a/include/uapi/linux/nfc.h
> +++ b/include/uapi/linux/nfc.h
> @@ -263,7 +263,7 @@ enum nfc_sdp_attr {
>  #define NFC_SE_ENABLED  0x1
>  
>  struct sockaddr_nfc {
> -	sa_family_t sa_family;
> +	__kernel_sa_family_t sa_family;

include/uapi/linux/nfc.h includes linux/socket.h which defines typedef:
  __kernel_sa_family_t    sa_family_t;
so how exactly the build is being fixed? How to reproduce it?

Best regards,
Krzysztof
Re: [PATCH resend] uapi: fix linux/nfc.h userspace compilation errors
Posted by Krzysztof Kozlowski 4 years, 6 months ago
On 26/12/2021 12:42, Krzysztof Kozlowski wrote:
> On 26/12/2021 00:42, Dmitry V. Levin wrote:
>> Replace sa_family_t with __kernel_sa_family_t to fix the following
>> linux/nfc.h userspace compilation errors:
>>
>> /usr/include/linux/nfc.h:266:2: error: unknown type name 'sa_family_t'
>>   sa_family_t sa_family;
>> /usr/include/linux/nfc.h:274:2: error: unknown type name 'sa_family_t'
>>   sa_family_t sa_family;
>>
>> Link: https://lore.kernel.org/lkml/20170220181613.GB11185@altlinux.org/
> 
> Please skip the link. There will be link added for current patch which
> leads to this discussion. There was no discussion in 2017.
> 
>> Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
>> ---
>>  The patch was submitted almost 5 years ago, and I was under impression
>>  that it was applied among others of this kind, but, apparently,
>>  it's still relevant.
>>
>>  include/uapi/linux/nfc.h | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/include/uapi/linux/nfc.h b/include/uapi/linux/nfc.h
>> index f6e3c8c9c744..aadad43d943a 100644
>> --- a/include/uapi/linux/nfc.h
>> +++ b/include/uapi/linux/nfc.h
>> @@ -263,7 +263,7 @@ enum nfc_sdp_attr {
>>  #define NFC_SE_ENABLED  0x1
>>  
>>  struct sockaddr_nfc {
>> -	sa_family_t sa_family;
>> +	__kernel_sa_family_t sa_family;
> 
> include/uapi/linux/nfc.h includes linux/socket.h which defines typedef:
>   __kernel_sa_family_t    sa_family_t;
> so how exactly the build is being fixed? How to reproduce it?
> 

Ok, I see the error - when user-space does not include sys/socket.h.
Makes sense, can you resend with removed Link and with:
Fixes: 23b7869c0fd0 ("NFC: add the NFC socket raw protocol")

Fixes: d646960f7986 ("NFC: Initial LLCP support")


Best regards,
Krzysztof
[PATCH v2] uapi: fix linux/nfc.h userspace compilation errors
Posted by Dmitry V. Levin 4 years, 6 months ago
Replace sa_family_t with __kernel_sa_family_t to fix the following
linux/nfc.h userspace compilation errors:

/usr/include/linux/nfc.h:266:2: error: unknown type name 'sa_family_t'
  sa_family_t sa_family;
/usr/include/linux/nfc.h:274:2: error: unknown type name 'sa_family_t'
  sa_family_t sa_family;

Fixes: 23b7869c0fd0 ("NFC: add the NFC socket raw protocol")
Fixes: d646960f7986 ("NFC: Initial LLCP support")
Cc: <stable@vger.kernel.org>
Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
---
 v2: Removed Link tag, added Fixes and Cc tags.

 include/uapi/linux/nfc.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/uapi/linux/nfc.h b/include/uapi/linux/nfc.h
index f6e3c8c9c744..aadad43d943a 100644
--- a/include/uapi/linux/nfc.h
+++ b/include/uapi/linux/nfc.h
@@ -263,7 +263,7 @@ enum nfc_sdp_attr {
 #define NFC_SE_ENABLED  0x1
 
 struct sockaddr_nfc {
-	sa_family_t sa_family;
+	__kernel_sa_family_t sa_family;
 	__u32 dev_idx;
 	__u32 target_idx;
 	__u32 nfc_protocol;
@@ -271,7 +271,7 @@ struct sockaddr_nfc {
 
 #define NFC_LLCP_MAX_SERVICE_NAME 63
 struct sockaddr_nfc_llcp {
-	sa_family_t sa_family;
+	__kernel_sa_family_t sa_family;
 	__u32 dev_idx;
 	__u32 target_idx;
 	__u32 nfc_protocol;

-- 
ldv
Re: [PATCH v2] uapi: fix linux/nfc.h userspace compilation errors
Posted by Krzysztof Kozlowski 4 years, 6 months ago
On 26/12/2021 14:01, Dmitry V. Levin wrote:
> Replace sa_family_t with __kernel_sa_family_t to fix the following
> linux/nfc.h userspace compilation errors:
> 
> /usr/include/linux/nfc.h:266:2: error: unknown type name 'sa_family_t'
>   sa_family_t sa_family;
> /usr/include/linux/nfc.h:274:2: error: unknown type name 'sa_family_t'
>   sa_family_t sa_family;
> 
> Fixes: 23b7869c0fd0 ("NFC: add the NFC socket raw protocol")
> Fixes: d646960f7986 ("NFC: Initial LLCP support")
> Cc: <stable@vger.kernel.org>
> Signed-off-by: Dmitry V. Levin <ldv@altlinux.org>
> ---
>  v2: Removed Link tag, added Fixes and Cc tags.
> 
>  include/uapi/linux/nfc.h | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 


Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>


Best regards,
Krzysztof