From patchwork Tue Jan 14 22:54:56 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Dmitry Baryshkov X-Patchwork-Id: 310889 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 2CFAC2C0091 for ; Wed, 15 Jan 2014 09:55:05 +1100 (EST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751813AbaANWzA (ORCPT ); Tue, 14 Jan 2014 17:55:00 -0500 Received: from mail-ie0-f173.google.com ([209.85.223.173]:53473 "EHLO mail-ie0-f173.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751038AbaANWy5 (ORCPT ); Tue, 14 Jan 2014 17:54:57 -0500 Received: by mail-ie0-f173.google.com with SMTP id e14so1124482iej.32 for ; Tue, 14 Jan 2014 14:54:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=kTBZzxXjjV5Td9HfKpWnK44itmTvdcAmr3scQQvA2VQ=; b=KKPfL+hvwYFRh1TpNRUtZiLgtSKpds4mtHcEvdE4c4SW94wbyp/EU+1toPM8GPHhDN r1wHWJ8lUavGGbQy/ovEBxT13IkXPcrUEEs0UXVrVmN3dh37XIhtbH/iaQmPLkKcfRPo 3FekwGLrTqLuSkNAQiFMNMPTh8AgREHIg1fKx9vjNF3KNudGpayvc+qLMG5HWlAlE6ho /dInPVH7XnAhEDnat1RxJbPrXxWZKJANMwh4lK4dfwTSRd/heBhBOrc9f3Kx5b64jmWg 8nT79TUeY+6Gc/VGmhNsO+QWgdVZN+PQpBFYPQ6FOSVtX3RyHu0UcC16G63CvGsj/f6D WsAw== MIME-Version: 1.0 X-Received: by 10.43.153.138 with SMTP id la10mr888392icc.10.1389740096962; Tue, 14 Jan 2014 14:54:56 -0800 (PST) Received: by 10.64.250.37 with HTTP; Tue, 14 Jan 2014 14:54:56 -0800 (PST) In-Reply-To: <52D578A7.8020000@infradead.org> References: <20140114165128.0dd51f362e0f34a2ef4dc92f@canb.auug.org.au> <52D578A7.8020000@infradead.org> Date: Wed, 15 Jan 2014 02:54:56 +0400 Message-ID: Subject: Re: linux-next: Tree for Jan 14 (lowpan, 802.15.4) From: Dmitry Eremin-Solenikov To: Randy Dunlap , "David S. Miller" , Marcel Holtmann Cc: Stephen Rothwell , linux-next@vger.kernel.org, kernel list , linux-zigbee-devel , Alexander Smirnov , "netdev@vger.kernel.org" , Jukka Rissanen Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Hello, On Tue, Jan 14, 2014 at 9:49 PM, Randy Dunlap wrote: > > On 01/13/2014 09:51 PM, Stephen Rothwell wrote: > > Hi all, > > > > This tree fails (more than usual) the powerpc allyesconfig build. > > > > Changes since 20140113: > > > > > on i386: > > net/built-in.o: In function `header_create': > 6lowpan.c:(.text+0x166149): undefined reference to `lowpan_header_compress' > net/built-in.o: In function `bt_6lowpan_recv': > (.text+0x166b3c): undefined reference to `lowpan_process_data' Ah, nice Makefile hack there. David, Marcel, could you please consider the attached patch. From 4c3db6d3c244decf434665c30c1bf75aad1f94b2 Mon Sep 17 00:00:00 2001 From: Dmitry Eremin-Solenikov Date: Wed, 15 Jan 2014 02:50:40 +0400 Subject: [PATCH] net: move 6lowpan compression code to separate module IEEE 802.15.4 and Bluetooth networking stacks share 6lowpan compression code. Instead of introducing Makefile/Kconfig hacks, build this code as a separate module referenced from both ieee802154 and bluetooth modules. This fixes the following build error observed in some kernel configurations: net/built-in.o: In function `header_create': 6lowpan.c:(.text+0x166149): undefined reference to `lowpan_header_compress' net/built-in.o: In function `bt_6lowpan_recv': (.text+0x166b3c): undefined reference to `lowpan_process_data' Signed-off-by: Dmitry Eremin-Solenikov --- net/Makefile | 2 +- net/bluetooth/Kconfig | 1 + net/ieee802154/Kconfig | 7 +++++++ net/ieee802154/Makefile | 3 ++- 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/net/Makefile b/net/Makefile index 8fa2f91..cbbbe6d 100644 --- a/net/Makefile +++ b/net/Makefile @@ -57,7 +57,7 @@ obj-$(CONFIG_CAIF) += caif/ ifneq ($(CONFIG_DCB),) obj-y += dcb/ endif -obj-$(CONFIG_IEEE802154) += ieee802154/ +obj-y += ieee802154/ obj-$(CONFIG_MAC802154) += mac802154/ ifeq ($(CONFIG_NET),y) diff --git a/net/bluetooth/Kconfig b/net/bluetooth/Kconfig index d3f3f7b..985b560 100644 --- a/net/bluetooth/Kconfig +++ b/net/bluetooth/Kconfig @@ -12,6 +12,7 @@ menuconfig BT select CRYPTO_AES select CRYPTO_ECB select CRYPTO_SHA256 + select 6LOWPAN_IPHC help Bluetooth is low-cost, low-power, short-range wireless technology. It was designed as a replacement for cables and other short-range diff --git a/net/ieee802154/Kconfig b/net/ieee802154/Kconfig index b2e06df..9c9879d 100644 --- a/net/ieee802154/Kconfig +++ b/net/ieee802154/Kconfig @@ -13,5 +13,12 @@ config IEEE802154 config IEEE802154_6LOWPAN tristate "6lowpan support over IEEE 802.15.4" depends on IEEE802154 && IPV6 + select 6LOWPAN_IPHC ---help--- IPv6 compression over IEEE 802.15.4. + +config 6LOWPAN_IPHC + tristate + ---help--- + 6lowpan compression code which is shared between IEEE 802.15.4 and Bluetooth + stacks. diff --git a/net/ieee802154/Makefile b/net/ieee802154/Makefile index 951a83e..e8f0588 100644 --- a/net/ieee802154/Makefile +++ b/net/ieee802154/Makefile @@ -1,5 +1,6 @@ obj-$(CONFIG_IEEE802154) += ieee802154.o af_802154.o -obj-$(CONFIG_IEEE802154_6LOWPAN) += 6lowpan.o 6lowpan_iphc.o +obj-$(CONFIG_IEEE802154_6LOWPAN) += 6lowpan.o +obj-$(CONFIG_6LOWPAN_IPHC) += 6lowpan_iphc.o ieee802154-y := netlink.o nl-mac.o nl-phy.o nl_policy.o wpan-class.o af_802154-y := af_ieee802154.o raw.o dgram.o -- 1.8.5.2