diff mbox series

[1/4] package/openobex: disable on Blackfin

Message ID 20171101201137.29939-1-s.martin49@gmail.com
State Rejected
Headers show
Series [1/4] package/openobex: disable on Blackfin | expand

Commit Message

Samuel Martin Nov. 1, 2017, 8:11 p.m. UTC
Openobex uses accept4 syscall, which is not available on Blackfin flavored uclibc.
So, diasble openobex on blackfin (do not add extra checks on the c-library since
uclibc is the only choice for Blackfin).

Fixed:
  http://autobuild.buildroot.net/results/78e033fe9f43845581a5d87b21a8451f67520e44

Signed-off-by: Samuel Martin <s.martin49@gmail.com>
---
 package/openobex/Config.in | 1 +
 1 file changed, 1 insertion(+)

Comments

Thomas Petazzoni Nov. 1, 2017, 10:23 p.m. UTC | #1
Hello,

On Wed,  1 Nov 2017 21:11:34 +0100, Samuel Martin wrote:
> Openobex uses accept4 syscall, which is not available on Blackfin flavored uclibc.
> So, diasble openobex on blackfin (do not add extra checks on the c-library since
> uclibc is the only choice for Blackfin).
> 
> Fixed:
>   http://autobuild.buildroot.net/results/78e033fe9f43845581a5d87b21a8451f67520e44
> 
> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
> ---
>  package/openobex/Config.in | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/package/openobex/Config.in b/package/openobex/Config.in
> index e611b8d803..4a4dc214ef 100644
> --- a/package/openobex/Config.in
> +++ b/package/openobex/Config.in
> @@ -1,5 +1,6 @@
>  config BR2_PACKAGE_OPENOBEX
>  	bool "openobex"
> +	depends on !BR2_bfin
>  	help
>  	  Free open source implementation of the Object Exchange (OBEX)
>  	  protocol.

What about the Config.in comment, and the reverse dependencies of
BR2_PACKAGE_OPENOBEX ?

Also, I'd like to hear from Waldemar about accept4 availability on
Blackfin/uClibc-ng.

Thanks!

Thomas
Waldemar Brodkorb Nov. 2, 2017, 2:14 a.m. UTC | #2
Hi Thomas,
Thomas Petazzoni wrote,

> Hello,
> 
> On Wed,  1 Nov 2017 21:11:34 +0100, Samuel Martin wrote:
> > Openobex uses accept4 syscall, which is not available on Blackfin flavored uclibc.
> > So, diasble openobex on blackfin (do not add extra checks on the c-library since
> > uclibc is the only choice for Blackfin).
> > 
> > Fixed:
> >   http://autobuild.buildroot.net/results/78e033fe9f43845581a5d87b21a8451f67520e44
> > 
> > Signed-off-by: Samuel Martin <s.martin49@gmail.com>
> > ---
> >  package/openobex/Config.in | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/package/openobex/Config.in b/package/openobex/Config.in
> > index e611b8d803..4a4dc214ef 100644
> > --- a/package/openobex/Config.in
> > +++ b/package/openobex/Config.in
> > @@ -1,5 +1,6 @@
> >  config BR2_PACKAGE_OPENOBEX
> >  	bool "openobex"
> > +	depends on !BR2_bfin
> >  	help
> >  	  Free open source implementation of the Object Exchange (OBEX)
> >  	  protocol.
> 
> What about the Config.in comment, and the reverse dependencies of
> BR2_PACKAGE_OPENOBEX ?
> 
> Also, I'd like to hear from Waldemar about accept4 availability on
> Blackfin/uClibc-ng.

For me it looks like a uClibc bug.
When socketcalls.c was converted to use cancel.h for syscall
cancellation (19607f1113ef9916a0a0ac2bf99b5bc32526f0de)
it seems accept4 was left out for no specific reason.

For Linuxthreads the syscall wrapper for accept4 isn't compiled in.
I think for NPTL we do not see the issue.

I am going to sent out a patch soon.

best regards
 Waldemar
Samuel Martin Nov. 2, 2017, 8:01 a.m. UTC | #3
Hi all,

On Wed, Nov 1, 2017 at 11:23 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Hello,
>
> On Wed,  1 Nov 2017 21:11:34 +0100, Samuel Martin wrote:
>> Openobex uses accept4 syscall, which is not available on Blackfin flavored uclibc.
>> So, diasble openobex on blackfin (do not add extra checks on the c-library since
>> uclibc is the only choice for Blackfin).
>>
>> Fixed:
>>   http://autobuild.buildroot.net/results/78e033fe9f43845581a5d87b21a8451f67520e44
>>
>> Signed-off-by: Samuel Martin <s.martin49@gmail.com>
>> ---
>>  package/openobex/Config.in | 1 +
>>  1 file changed, 1 insertion(+)
>>
>> diff --git a/package/openobex/Config.in b/package/openobex/Config.in
>> index e611b8d803..4a4dc214ef 100644
>> --- a/package/openobex/Config.in
>> +++ b/package/openobex/Config.in
>> @@ -1,5 +1,6 @@
>>  config BR2_PACKAGE_OPENOBEX
>>       bool "openobex"
>> +     depends on !BR2_bfin
>>       help
>>         Free open source implementation of the Object Exchange (OBEX)
>>         protocol.
>
> What about the Config.in comment, and the reverse dependencies of
> BR2_PACKAGE_OPENOBEX ?

Well, I was not really sure about what to mention... and also wanted
to heard Waldemar opinion.
FYI, this commit 53996bee433f09a91b12aa53b2be0f7d22c0acbe seems to fix
a similar issue.

>
> Also, I'd like to hear from Waldemar about accept4 availability on
> Blackfin/uClibc-ng.
>
> Thanks!
>
> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux and Kernel engineering
> http://free-electrons.com


Regards,
Thomas Petazzoni Nov. 2, 2017, 8:07 a.m. UTC | #4
Hello,

On Thu, 2 Nov 2017 03:14:34 +0100, Waldemar Brodkorb wrote:

> > Also, I'd like to hear from Waldemar about accept4 availability on
> > Blackfin/uClibc-ng.  
> 
> For me it looks like a uClibc bug.
> When socketcalls.c was converted to use cancel.h for syscall
> cancellation (19607f1113ef9916a0a0ac2bf99b5bc32526f0de)
> it seems accept4 was left out for no specific reason.
> 
> For Linuxthreads the syscall wrapper for accept4 isn't compiled in.
> I think for NPTL we do not see the issue.
> 
> I am going to sent out a patch soon.

Great, thanks a lot!

Thomas
Thomas Petazzoni Nov. 2, 2017, 10:38 a.m. UTC | #5
Hello,

On Thu, 2 Nov 2017 09:01:28 +0100, Samuel Martin wrote:

> >> diff --git a/package/openobex/Config.in b/package/openobex/Config.in
> >> index e611b8d803..4a4dc214ef 100644
> >> --- a/package/openobex/Config.in
> >> +++ b/package/openobex/Config.in
> >> @@ -1,5 +1,6 @@
> >>  config BR2_PACKAGE_OPENOBEX
> >>       bool "openobex"
> >> +     depends on !BR2_bfin
> >>       help
> >>         Free open source implementation of the Object Exchange (OBEX)
> >>         protocol.  
> >
> > What about the Config.in comment, and the reverse dependencies of
> > BR2_PACKAGE_OPENOBEX ?  
> 
> Well, I was not really sure about what to mention... and also wanted
> to heard Waldemar opinion.

I don't understand what you mean here. If you're adding a new
dependency to a package, you must:

 - Propagate it to the Config.in comment of that package

 - Propagate it to the reverse dependencies of that package

So I'm not sure how you can be "not really sure about what to mention".

You must add a "depends on !BR2_bfin" in the Config.in comment, and
then a depends on !BR2_bfin to all reverse dependencies of openobex,
including their Config.in comments. There is nothing to "mention".

But since Waldemar has submitted a patch to fix the actual problem in
uClibc, this is all moot :)

> FYI, this commit 53996bee433f09a91b12aa53b2be0f7d22c0acbe seems to fix
> a similar issue.

We should revert this commit once Waldemar fix is merged, and we have
rebuilt the toolchains.

Best regards,

Thomas
Samuel Martin Nov. 2, 2017, 10:42 a.m. UTC | #6
On Thu, Nov 2, 2017 at 11:38 AM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Hello,
>
> On Thu, 2 Nov 2017 09:01:28 +0100, Samuel Martin wrote:
>
>> >> diff --git a/package/openobex/Config.in b/package/openobex/Config.in
>> >> index e611b8d803..4a4dc214ef 100644
>> >> --- a/package/openobex/Config.in
>> >> +++ b/package/openobex/Config.in
>> >> @@ -1,5 +1,6 @@
>> >>  config BR2_PACKAGE_OPENOBEX
>> >>       bool "openobex"
>> >> +     depends on !BR2_bfin
>> >>       help
>> >>         Free open source implementation of the Object Exchange (OBEX)
>> >>         protocol.
>> >
>> > What about the Config.in comment, and the reverse dependencies of
>> > BR2_PACKAGE_OPENOBEX ?
>>
>> Well, I was not really sure about what to mention... and also wanted
>> to heard Waldemar opinion.
>
> I don't understand what you mean here. If you're adding a new
> dependency to a package, you must:
>
>  - Propagate it to the Config.in comment of that package
>
>  - Propagate it to the reverse dependencies of that package
>
> So I'm not sure how you can be "not really sure about what to mention".
>
> You must add a "depends on !BR2_bfin" in the Config.in comment, and
> then a depends on !BR2_bfin to all reverse dependencies of openobex,
> including their Config.in comments. There is nothing to "mention".
>
> But since Waldemar has submitted a patch to fix the actual problem in
> uClibc, this is all moot :)
>
>> FYI, this commit 53996bee433f09a91b12aa53b2be0f7d22c0acbe seems to fix
>> a similar issue.
>
> We should revert this commit once Waldemar fix is merged, and we have
> rebuilt the toolchains.

That's the plan.

Regards,

>
> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux and Kernel engineering
> http://free-electrons.com
diff mbox series

Patch

diff --git a/package/openobex/Config.in b/package/openobex/Config.in
index e611b8d803..4a4dc214ef 100644
--- a/package/openobex/Config.in
+++ b/package/openobex/Config.in
@@ -1,5 +1,6 @@ 
 config BR2_PACKAGE_OPENOBEX
 	bool "openobex"
+	depends on !BR2_bfin
 	help
 	  Free open source implementation of the Object Exchange (OBEX)
 	  protocol.