From: Randy Dunlap on
On 02/18/10 01:49, Stephen Rothwell wrote:
> Hi all,
>
> Changes since 20100217:
>
> The net tree lost its build failure but gained a conflict against the kvm
> tree.


include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type
include/net/netfilter/nf_conntrack.h:178: error: 'const struct sk_buff' has no member named 'nfct'
include/net/netfilter/nf_conntrack.h:185: error: implicit declaration of function 'nf_conntrack_put'
include/net/netfilter/nf_conntrack.h:294: error: 'const struct sk_buff' has no member named 'nfct'
net/ipv4/netfilter/nf_defrag_ipv4.c:45: error: 'struct sk_buff' has no member named 'nfct'
net/ipv4/netfilter/nf_defrag_ipv4.c:46: error: 'struct sk_buff' has no member named 'nfct'

CONFIG_NF_CONNTRACK is not enabled
but CONFIG_NF_DEFRAG_IPV4=y. It is "select"ed by
NETFILTER_XT_MATCH_SOCKET and NETFILTER_XT_TARGET_TPROXY,
both of which are enabled.

Hm, NETFILTER_XT_MATCH_SOCKET depends on !NF_CONNTRACK || NF_CONNTRACK.
Maybe NETFILTER_XT_TARGET_TPROXY needs to do that also. No, that would
go against that config option's help text:

It does _not_ depend
on Netfilter connection tracking and NAT, unlike REDIRECT.

config attached.
--
~Randy
From: Patrick McHardy on
Randy Dunlap wrote:
> On 02/18/10 01:49, Stephen Rothwell wrote:
>> Hi all,
>>
>> Changes since 20100217:
>>
>> The net tree lost its build failure but gained a conflict against the kvm
>> tree.
>
>
> include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type
> include/net/netfilter/nf_conntrack.h:178: error: 'const struct sk_buff' has no member named 'nfct'
> include/net/netfilter/nf_conntrack.h:185: error: implicit declaration of function 'nf_conntrack_put'
> include/net/netfilter/nf_conntrack.h:294: error: 'const struct sk_buff' has no member named 'nfct'
> net/ipv4/netfilter/nf_defrag_ipv4.c:45: error: 'struct sk_buff' has no member named 'nfct'
> net/ipv4/netfilter/nf_defrag_ipv4.c:46: error: 'struct sk_buff' has no member named 'nfct'
>
> CONFIG_NF_CONNTRACK is not enabled
> but CONFIG_NF_DEFRAG_IPV4=y. It is "select"ed by
> NETFILTER_XT_MATCH_SOCKET and NETFILTER_XT_TARGET_TPROXY,
> both of which are enabled.
>
> Hm, NETFILTER_XT_MATCH_SOCKET depends on !NF_CONNTRACK || NF_CONNTRACK.
> Maybe NETFILTER_XT_TARGET_TPROXY needs to do that also. No, that would
> go against that config option's help text:

No, the problem is use of skb->nfct without CONFIG_NF_CONNTRACK.

This patch should fix it.
From: Randy Dunlap on
On 02/18/10 09:03, Patrick McHardy wrote:
> Randy Dunlap wrote:
>> On 02/18/10 01:49, Stephen Rothwell wrote:
>>> Hi all,
>>>
>>> Changes since 20100217:
>>>
>>> The net tree lost its build failure but gained a conflict against the kvm
>>> tree.
>>
>>
>> include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type
>> include/net/netfilter/nf_conntrack.h:178: error: 'const struct sk_buff' has no member named 'nfct'
>> include/net/netfilter/nf_conntrack.h:185: error: implicit declaration of function 'nf_conntrack_put'
>> include/net/netfilter/nf_conntrack.h:294: error: 'const struct sk_buff' has no member named 'nfct'
>> net/ipv4/netfilter/nf_defrag_ipv4.c:45: error: 'struct sk_buff' has no member named 'nfct'
>> net/ipv4/netfilter/nf_defrag_ipv4.c:46: error: 'struct sk_buff' has no member named 'nfct'
>>
>> CONFIG_NF_CONNTRACK is not enabled
>> but CONFIG_NF_DEFRAG_IPV4=y. It is "select"ed by
>> NETFILTER_XT_MATCH_SOCKET and NETFILTER_XT_TARGET_TPROXY,
>> both of which are enabled.
>>
>> Hm, NETFILTER_XT_MATCH_SOCKET depends on !NF_CONNTRACK || NF_CONNTRACK.
>> Maybe NETFILTER_XT_TARGET_TPROXY needs to do that also. No, that would
>> go against that config option's help text:
>
> No, the problem is use of skb->nfct without CONFIG_NF_CONNTRACK.
>
> This patch should fix it.

Nope:

In file included from /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack_extend.h:4,
from /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack_zones.h:4,
from /lnx/src/NEXT/linux-next-20100218/net/ipv4/netfilter/nf_defrag_ipv4.c:19:
/lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type
/lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h: In function 'nf_ct_get':
/lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h:178: error: 'const struct sk_buff' has no member named 'nfct'
/lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h: In function 'nf_ct_put':
/lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h:185: error: implicit declaration of function 'nf_conntrack_put'
/lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h: In function 'nf_ct_is_untracked':
/lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h:294: error: 'const struct sk_buff' has no member named 'nfct'
make[4]: *** [net/ipv4/netfilter/nf_defrag_ipv4.o] Error 1


--
~Randy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Patrick McHardy on
Randy Dunlap wrote:
> On 02/18/10 09:03, Patrick McHardy wrote:
>> Randy Dunlap wrote:
>>> On 02/18/10 01:49, Stephen Rothwell wrote:
>>>> Hi all,
>>>>
>>>> Changes since 20100217:
>>>>
>>>> The net tree lost its build failure but gained a conflict against the kvm
>>>> tree.
>>>
>>> include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type
>>> include/net/netfilter/nf_conntrack.h:178: error: 'const struct sk_buff' has no member named 'nfct'
>>> include/net/netfilter/nf_conntrack.h:185: error: implicit declaration of function 'nf_conntrack_put'
>>> include/net/netfilter/nf_conntrack.h:294: error: 'const struct sk_buff' has no member named 'nfct'
>>> net/ipv4/netfilter/nf_defrag_ipv4.c:45: error: 'struct sk_buff' has no member named 'nfct'
>>> net/ipv4/netfilter/nf_defrag_ipv4.c:46: error: 'struct sk_buff' has no member named 'nfct'
>>>
>>> CONFIG_NF_CONNTRACK is not enabled
>>> but CONFIG_NF_DEFRAG_IPV4=y. It is "select"ed by
>>> NETFILTER_XT_MATCH_SOCKET and NETFILTER_XT_TARGET_TPROXY,
>>> both of which are enabled.
>>>
>>> Hm, NETFILTER_XT_MATCH_SOCKET depends on !NF_CONNTRACK || NF_CONNTRACK.
>>> Maybe NETFILTER_XT_TARGET_TPROXY needs to do that also. No, that would
>>> go against that config option's help text:
>> No, the problem is use of skb->nfct without CONFIG_NF_CONNTRACK.
>>
>> This patch should fix it.
>
> Nope:
>
> In file included from /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack_extend.h:4,
> from /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack_zones.h:4,
> from /lnx/src/NEXT/linux-next-20100218/net/ipv4/netfilter/nf_defrag_ipv4.c:19:
> /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type
> /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h: In function 'nf_ct_get':

Ah I see, we must not include nf_conntrack.h at all. Eventually
we need to fix this properly by making nf_conntrack.h usable
even with NF_CONNTRACK=n, but that's a more complicated change.

This patch works fine for me using your config:

From: Randy Dunlap on
On 02/18/10 09:45, Patrick McHardy wrote:
> Randy Dunlap wrote:
>> On 02/18/10 09:03, Patrick McHardy wrote:
>>> Randy Dunlap wrote:
>>>> On 02/18/10 01:49, Stephen Rothwell wrote:
>>>>> Hi all,
>>>>>
>>>>> Changes since 20100217:
>>>>>
>>>>> The net tree lost its build failure but gained a conflict against the kvm
>>>>> tree.
>>>>
>>>> include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type
>>>> include/net/netfilter/nf_conntrack.h:178: error: 'const struct sk_buff' has no member named 'nfct'
>>>> include/net/netfilter/nf_conntrack.h:185: error: implicit declaration of function 'nf_conntrack_put'
>>>> include/net/netfilter/nf_conntrack.h:294: error: 'const struct sk_buff' has no member named 'nfct'
>>>> net/ipv4/netfilter/nf_defrag_ipv4.c:45: error: 'struct sk_buff' has no member named 'nfct'
>>>> net/ipv4/netfilter/nf_defrag_ipv4.c:46: error: 'struct sk_buff' has no member named 'nfct'
>>>>
>>>> CONFIG_NF_CONNTRACK is not enabled
>>>> but CONFIG_NF_DEFRAG_IPV4=y. It is "select"ed by
>>>> NETFILTER_XT_MATCH_SOCKET and NETFILTER_XT_TARGET_TPROXY,
>>>> both of which are enabled.
>>>>
>>>> Hm, NETFILTER_XT_MATCH_SOCKET depends on !NF_CONNTRACK || NF_CONNTRACK.
>>>> Maybe NETFILTER_XT_TARGET_TPROXY needs to do that also. No, that would
>>>> go against that config option's help text:
>>> No, the problem is use of skb->nfct without CONFIG_NF_CONNTRACK.
>>>
>>> This patch should fix it.
>>
>> Nope:
>>
>> In file included from /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack_extend.h:4,
>> from /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack_zones.h:4,
>> from /lnx/src/NEXT/linux-next-20100218/net/ipv4/netfilter/nf_defrag_ipv4.c:19:
>> /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h:94: error: field 'ct_general' has incomplete type
>> /lnx/src/NEXT/linux-next-20100218/include/net/netfilter/nf_conntrack.h: In function 'nf_ct_get':
>
> Ah I see, we must not include nf_conntrack.h at all. Eventually
> we need to fix this properly by making nf_conntrack.h usable
> even with NF_CONNTRACK=n, but that's a more complicated change.
>
> This patch works fine for me using your config:
>

Ack. Thanks.

--
~Randy
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/