All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v3 1/1] package/network-manager: add patches to build with kernel headers 3.2
@ 2015-06-22 10:43 Petr Vorel
  2015-06-23  7:58 ` Arnout Vandecappelle
  2015-06-30 21:11 ` Thomas Petazzoni
  0 siblings, 2 replies; 6+ messages in thread
From: Petr Vorel @ 2015-06-22 10:43 UTC (permalink / raw)
  To: buildroot

From: Petr Vorel <petr.vorel@gmail.com>

+ lower kernel headers dependency

According to upstream [1], there is no known minimal kernel-version, nor
minimal required feature-set.

Experimentally tested, that 1.0.2 is works with 3.2 kernel headers, even
some features will be missing [2].

[1] https://mail.gnome.org/archives/networkmanager-list/2015-April/msg00039.html
[2] https://mail.gnome.org/archives/networkmanager-list/2015-April/msg00041.html

Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
---
Changes v3:
 - Lower kernel headers dependency to 3.2
 - Preserved original author of
   0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch
 - Added Signed-off-by inside both patches.
Changes v2: rewrited patch 0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch
---
 ...anager-fix-build-with-Linux-3.2.0-headers.patch | 30 ++++++++++++++++++
 ...d-dhcp-fix-build-with-Linux-3.2.0-headers.patch | 37 ++++++++++++++++++++++
 package/network-manager/Config.in                  |  2 +-
 3 files changed, 68 insertions(+), 1 deletion(-)
 create mode 100644 package/network-manager/0001-ppp-manager-fix-build-with-Linux-3.2.0-headers.patch
 create mode 100644 package/network-manager/0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch

diff --git a/package/network-manager/0001-ppp-manager-fix-build-with-Linux-3.2.0-headers.patch b/package/network-manager/0001-ppp-manager-fix-build-with-Linux-3.2.0-headers.patch
new file mode 100644
index 0000000..49c1996
--- /dev/null
+++ b/package/network-manager/0001-ppp-manager-fix-build-with-Linux-3.2.0-headers.patch
@@ -0,0 +1,30 @@
+From 22b99e3bbb2ca33963e839f12ab95314ab8d9ba9 Mon Sep 17 00:00:00 2001
+From: Lubomir Rintel <lkundrak@v3.sk>
+Date: Fri, 15 May 2015 16:37:20 +0200
+Subject: [PATCH] ppp-manager: fix build with Linux 3.2.0 headers
+
+Fixes build with Ubuntu 12.04.
+
+In file included from ppp-manager/nm-ppp-manager.c:42:0:
+/usr/include/linux/if_ppp.h:103:16: error: field 'b' has incomplete type
+/usr/include/linux/if_ppp.h:108:21: error: field 'b' has incomplete type
+
+Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
+---
+ src/ppp-manager/nm-ppp-manager.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/ppp-manager/nm-ppp-manager.c b/src/ppp-manager/nm-ppp-manager.c
+index e27c82b..d410ebf 100644
+--- a/src/ppp-manager/nm-ppp-manager.c
++++ b/src/ppp-manager/nm-ppp-manager.c
+@@ -39,6 +39,7 @@
+ #ifndef aligned_u64
+ #define aligned_u64 unsigned long long __attribute__((aligned(8)))
+ #endif
++#include <linux/if.h>
+ #include <linux/if_ppp.h>
+
+ #include "NetworkManagerUtils.h"
+--
+2.1.4
diff --git a/package/network-manager/0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch b/package/network-manager/0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch
new file mode 100644
index 0000000..01eefec
--- /dev/null
+++ b/package/network-manager/0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch
@@ -0,0 +1,37 @@
+From 7f84150e9f6aa7e900d70178e0fc0acc6cfba651 Mon Sep 17 00:00:00 2001
+From: Lubomir Rintel <lkundrak@v3.sk>
+Date: Fri, 15 May 2015 16:38:10 +0200
+Subject: [PATCH] systemd-dhcp: fix build with Linux 3.2.0 headers
+
+Fixes build on Ubuntu 12.04.
+
+systemd/src/libsystemd-network/dhcp-network.c: In function '_bind_raw_socket':
+systemd/src/libsystemd-network/dhcp-network.c:75:17: error: 'BPF_XOR' undeclared (first use in this function)
+systemd/src/libsystemd-network/dhcp-network.c:75:17: note: each undeclared identifier is reported only once for each function it appears in
+make[4]: *** [libsystemd_nm_la-dhcp-network.lo] Error 1
+
+(cherry picked from commit 3811a68389b9277533f2eee8372927ca6238653e)
+
+Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
+---
+ src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h | 5 +++++
+ 1 file changed, 5 insertions(+)
+
+diff --git a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h
+index 6d500f4..f8856a1 100644
+--- a/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h
++++ b/src/dhcp-manager/systemd-dhcp/nm-sd-adapt.h
+@@ -38,6 +38,11 @@
+
+ #include "nm-logging.h"
+
++/* Missing in Linux 3.2.0, in Ubuntu 12.04 */
++#ifndef BPF_XOR
++#define BPF_XOR 0xa0
++#endif
++
+ static inline guint32
+ _slog_level_to_nm (int slevel)
+ {
+--
+2.1.4
diff --git a/package/network-manager/Config.in b/package/network-manager/Config.in
index f6d8564..ae0eb70 100644
--- a/package/network-manager/Config.in
+++ b/package/network-manager/Config.in
@@ -2,7 +2,7 @@ config BR2_PACKAGE_NETWORK_MANAGER
 	bool "networkmanager"
 	depends on BR2_USE_MMU # dbus
 	depends on BR2_PACKAGE_HAS_UDEV
-	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
+	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
 	depends on BR2_TOOLCHAIN_USES_GLIBC # CLOCK_BOOTTIME, IPTOS_CLASS_*
 	select BR2_PACKAGE_DHCPCD if !BR2_PACKAGE_DHCP_CLIENT
 	select BR2_PACKAGE_DBUS
-- 
1.8.0

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v3 1/1] package/network-manager: add patches to build with kernel headers 3.2
  2015-06-22 10:43 [Buildroot] [PATCH v3 1/1] package/network-manager: add patches to build with kernel headers 3.2 Petr Vorel
@ 2015-06-23  7:58 ` Arnout Vandecappelle
  2015-06-24 22:56   ` Petr Vorel
  2015-06-30 21:11 ` Thomas Petazzoni
  1 sibling, 1 reply; 6+ messages in thread
From: Arnout Vandecappelle @ 2015-06-23  7:58 UTC (permalink / raw)
  To: buildroot

On 06/22/15 12:43, Petr Vorel wrote:
> From: Petr Vorel <petr.vorel@gmail.com>
> 
> + lower kernel headers dependency
> 
> According to upstream [1], there is no known minimal kernel-version, nor
> minimal required feature-set.
> 
> Experimentally tested, that 1.0.2 is works with 3.2 kernel headers, even
> some features will be missing [2].

 "works" as in run-time tested?

> 
> [1] https://mail.gnome.org/archives/networkmanager-list/2015-April/msg00039.html
> [2] https://mail.gnome.org/archives/networkmanager-list/2015-April/msg00041.html
> 
> Signed-off-by: Petr Vorel <petr.vorel@gmail.com>

Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

 Some questions below though.

> ---
> Changes v3:
>  - Lower kernel headers dependency to 3.2
>  - Preserved original author of
>    0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch
>  - Added Signed-off-by inside both patches.
> Changes v2: rewrited patch 0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch
> ---
>  ...anager-fix-build-with-Linux-3.2.0-headers.patch | 30 ++++++++++++++++++
>  ...d-dhcp-fix-build-with-Linux-3.2.0-headers.patch | 37 ++++++++++++++++++++++
>  package/network-manager/Config.in                  |  2 +-
>  3 files changed, 68 insertions(+), 1 deletion(-)
>  create mode 100644 package/network-manager/0001-ppp-manager-fix-build-with-Linux-3.2.0-headers.patch
>  create mode 100644 package/network-manager/0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch
> 
> diff --git a/package/network-manager/0001-ppp-manager-fix-build-with-Linux-3.2.0-headers.patch b/package/network-manager/0001-ppp-manager-fix-build-with-Linux-3.2.0-headers.patch
> new file mode 100644
> index 0000000..49c1996
> --- /dev/null
> +++ b/package/network-manager/0001-ppp-manager-fix-build-with-Linux-3.2.0-headers.patch
> @@ -0,0 +1,30 @@
> +From 22b99e3bbb2ca33963e839f12ab95314ab8d9ba9 Mon Sep 17 00:00:00 2001
> +From: Lubomir Rintel <lkundrak@v3.sk>
> +Date: Fri, 15 May 2015 16:37:20 +0200
> +Subject: [PATCH] ppp-manager: fix build with Linux 3.2.0 headers
> +
> +Fixes build with Ubuntu 12.04.
> +
> +In file included from ppp-manager/nm-ppp-manager.c:42:0:
> +/usr/include/linux/if_ppp.h:103:16: error: field 'b' has incomplete type
> +/usr/include/linux/if_ppp.h:108:21: error: field 'b' has incomplete type
> +
> +Signed-off-by: Petr Vorel <petr.vorel@gmail.com>

 Upstream status?

> +---
> + src/ppp-manager/nm-ppp-manager.c | 1 +
> + 1 file changed, 1 insertion(+)
> +
> +diff --git a/src/ppp-manager/nm-ppp-manager.c b/src/ppp-manager/nm-ppp-manager.c
> +index e27c82b..d410ebf 100644
> +--- a/src/ppp-manager/nm-ppp-manager.c
> ++++ b/src/ppp-manager/nm-ppp-manager.c
> +@@ -39,6 +39,7 @@
> + #ifndef aligned_u64
> + #define aligned_u64 unsigned long long __attribute__((aligned(8)))
> + #endif
> ++#include <linux/if.h>
> + #include <linux/if_ppp.h>
> +
> + #include "NetworkManagerUtils.h"
> +--
> +2.1.4
[snip]
> diff --git a/package/network-manager/Config.in b/package/network-manager/Config.in
> index f6d8564..ae0eb70 100644
> --- a/package/network-manager/Config.in
> +++ b/package/network-manager/Config.in
> @@ -2,7 +2,7 @@ config BR2_PACKAGE_NETWORK_MANAGER
>  	bool "networkmanager"
>  	depends on BR2_USE_MMU # dbus
>  	depends on BR2_PACKAGE_HAS_UDEV
> -	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
> +	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2

 Basically it _may_ also work with lower kernel headers but hasn't been tested,
right? Ideally, it would be nice to do a (build-)test with 2.6.34-ish. Or else,
you could add a comment saying that it could work with lower headers. The
minimal headers version was anyway only introduced to fix an autobuild failure.

 Regards,
 Arnout


>  	depends on BR2_TOOLCHAIN_USES_GLIBC # CLOCK_BOOTTIME, IPTOS_CLASS_*
>  	select BR2_PACKAGE_DHCPCD if !BR2_PACKAGE_DHCP_CLIENT
>  	select BR2_PACKAGE_DBUS
> 


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v3 1/1] package/network-manager: add patches to build with kernel headers 3.2
  2015-06-23  7:58 ` Arnout Vandecappelle
@ 2015-06-24 22:56   ` Petr Vorel
  2015-06-25 23:17     ` Arnout Vandecappelle
  0 siblings, 1 reply; 6+ messages in thread
From: Petr Vorel @ 2015-06-24 22:56 UTC (permalink / raw)
  To: buildroot

Hi there,

> On 06/22/15 12:43, Petr Vorel wrote:
> > From: Petr Vorel <petr.vorel@gmail.com>

>  "works" as in run-time tested?
I've done some brief tests, I'll do more testing probably this week. Ok, I should have
wait and post the patch after more testing. Anyway I need to get it work even on lower
kernel than 3.2 (obviously some features will be missing, but NetworkManager cannot
crash). Upstream is willing to accept simple patches which fixes behaviour on older
kernels.

>  Upstream status?
Not sure if I understand your question. The patch was taken from upstream.

> > -	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
> > +	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2

>  Basically it _may_ also work with lower kernel headers but hasn't been tested,
> right? Ideally, it would be nice to do a (build-)test with 2.6.34-ish.
Why 2.6.34-ish? The minimum kernel version in toolchain/toolchain-common.in after
BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 is 2.6, which is unspecified.

> Or else, you could add a comment saying that it could work with lower headers. The
> minimal headers version was anyway only introduced to fix an autobuild failure.
Do you mean to keep BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 and mention in "help" lower
versions?

>  Regards,
>  Arnout

Kind regards,
Petr

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v3 1/1] package/network-manager: add patches to build with kernel headers 3.2
  2015-06-24 22:56   ` Petr Vorel
@ 2015-06-25 23:17     ` Arnout Vandecappelle
  0 siblings, 0 replies; 6+ messages in thread
From: Arnout Vandecappelle @ 2015-06-25 23:17 UTC (permalink / raw)
  To: buildroot

On 06/25/15 00:56, Petr Vorel wrote:
> Hi there,
> 
>> On 06/22/15 12:43, Petr Vorel wrote:
>>> From: Petr Vorel <petr.vorel@gmail.com>
> 
>>  "works" as in run-time tested?
> I've done some brief tests, I'll do more testing probably this week. Ok, I should have
> wait and post the patch after more testing. 

 No, it's a good idea to already post before that. But then it's also a good
idea to mention that you haven't done runtime testing :-)


> Anyway I need to get it work even on lower
> kernel than 3.2 (obviously some features will be missing, but NetworkManager cannot
> crash). Upstream is willing to accept simple patches which fixes behaviour on older
> kernels.

 Well, it's not strictly necessary to do that, just nice to have.

> 
>>  Upstream status?
> Not sure if I understand your question. The patch was taken from upstream.

 Sorry, my bad, the commit sha is indeed at the beginning of the patch.

> 
>>> -	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7
>>> +	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2
> 
>>  Basically it _may_ also work with lower kernel headers but hasn't been tested,
>> right? Ideally, it would be nice to do a (build-)test with 2.6.34-ish.
> Why 2.6.34-ish? The minimum kernel version in toolchain/toolchain-common.in after
> BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_0 is 2.6, which is unspecified.

 Indeed, we consider everything pre-3.0 as ancient. 2.6.34 is just a random
pre-3.0 version that I have seen in use recently.

> 
>> Or else, you could add a comment saying that it could work with lower headers. The
>> minimal headers version was anyway only introduced to fix an autobuild failure.
> Do you mean to keep BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_7 and mention in "help" lower
> versions?

 No, I mean: change it to 3.2 and mention in a comment that it might work on
lower versions. Like:

	# Tested with 3.2, but may even work with earlier versions
	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_2


 Regards,
 Arnout


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v3 1/1] package/network-manager: add patches to build with kernel headers 3.2
  2015-06-22 10:43 [Buildroot] [PATCH v3 1/1] package/network-manager: add patches to build with kernel headers 3.2 Petr Vorel
  2015-06-23  7:58 ` Arnout Vandecappelle
@ 2015-06-30 21:11 ` Thomas Petazzoni
  2015-07-01 10:07   ` Petr Vorel
  1 sibling, 1 reply; 6+ messages in thread
From: Thomas Petazzoni @ 2015-06-30 21:11 UTC (permalink / raw)
  To: buildroot

Dear Petr Vorel,

On Mon, 22 Jun 2015 12:43:50 +0200, Petr Vorel wrote:
> From: Petr Vorel <petr.vorel@gmail.com>
> 
> + lower kernel headers dependency
> 
> According to upstream [1], there is no known minimal kernel-version, nor
> minimal required feature-set.
> 
> Experimentally tested, that 1.0.2 is works with 3.2 kernel headers, even
> some features will be missing [2].
> 
> [1] https://mail.gnome.org/archives/networkmanager-list/2015-April/msg00039.html
> [2] https://mail.gnome.org/archives/networkmanager-list/2015-April/msg00041.html
> 
> Signed-off-by: Petr Vorel <petr.vorel@gmail.com>
> ---
> Changes v3:
>  - Lower kernel headers dependency to 3.2
>  - Preserved original author of
>    0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch
>  - Added Signed-off-by inside both patches.
> Changes v2: rewrited patch 0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch
> ---
>  ...anager-fix-build-with-Linux-3.2.0-headers.patch | 30 ++++++++++++++++++
>  ...d-dhcp-fix-build-with-Linux-3.2.0-headers.patch | 37 ++++++++++++++++++++++
>  package/network-manager/Config.in                  |  2 +-
>  3 files changed, 68 insertions(+), 1 deletion(-)
>  create mode 100644 package/network-manager/0001-ppp-manager-fix-build-with-Linux-3.2.0-headers.patch
>  create mode 100644 package/network-manager/0002-systemd-dhcp-fix-build-with-Linux-3.2.0-headers.patch

Applied after adding a comment in Config.in saying that it may work with
older kernel headers than 3.2, as suggested by Arnout.

Of course, when upstream makes a new release with those patches
integrated, it would be good if you could send a new Buildroot patch to
use this new upstream release.

Thanks a lot!

Thomas
-- 
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Buildroot] [PATCH v3 1/1] package/network-manager: add patches to build with kernel headers 3.2
  2015-06-30 21:11 ` Thomas Petazzoni
@ 2015-07-01 10:07   ` Petr Vorel
  0 siblings, 0 replies; 6+ messages in thread
From: Petr Vorel @ 2015-07-01 10:07 UTC (permalink / raw)
  To: buildroot

Dear Thomas Petazzoni,

> Applied after adding a comment in Config.in saying that it may work with
> older kernel headers than 3.2, as suggested by Arnout.
Thanks.

> Of course, when upstream makes a new release with those patches
> integrated, it would be good if you could send a new Buildroot patch to
> use this new upstream release.
Sure, I will.

Kind regards,
Petr

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-07-01 10:07 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-22 10:43 [Buildroot] [PATCH v3 1/1] package/network-manager: add patches to build with kernel headers 3.2 Petr Vorel
2015-06-23  7:58 ` Arnout Vandecappelle
2015-06-24 22:56   ` Petr Vorel
2015-06-25 23:17     ` Arnout Vandecappelle
2015-06-30 21:11 ` Thomas Petazzoni
2015-07-01 10:07   ` Petr Vorel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.