lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <57588F77-89EA-4BAF-8B11-E45D22B49968@holtmann.org>
Date:   Wed, 5 Oct 2016 09:48:42 +0200
From:   Marcel Holtmann <marcel@...tmann.org>
To:     Network Development <netdev@...r.kernel.org>,
        "David S. Miller" <davem@...emloft.net>,
        Aaron Conole <aconole@...heb.org>,
        Florian Westphal <fw@...len.de>,
        Pablo Neira Ayuso <pablo@...filter.org>
Subject: Re: net-next tree broken with CONFIG_NETFILTER_INGRESS=n

Hi Dave,

> the net-next tree is broken since a few days now when CONFIG_NETFILTER_INGRESS=n is set.
> 
>  CC      net/netfilter/core.o
> In file included from ./include/linux/linkage.h:4:0,
>                 from ./include/linux/kernel.h:6,
>                 from net/netfilter/core.c:10:
> net/netfilter/core.c: In function ‘nf_set_hooks_head’:
> net/netfilter/core.c:96:30: error: ‘struct net_device’ has no member named ‘nf_hooks_ingress’
>   rcu_assign_pointer(reg->dev->nf_hooks_ingress, entry);
>                              ^
> ./include/linux/compiler.h:299:17: note: in definition of macro ‘WRITE_ONCE’
>  union { typeof(x) __val; char __c[1]; } __u = \

I really wonder what is going on here. Normally if you break the build, you fix it. However it seems nobody really cares enough. If I am not mistaken, then this patch broke it:

commit e3b37f11e6e4e6b6f02cc762f182ce233d2c1c9d
Author: Aaron Conole <aconole@...heb.org>
Date:   Wed Sep 21 11:35:07 2016 -0400

    netfilter: replace list_head with single linked list
    
    The netfilter hook list never uses the prev pointer, and so can be trimmed to
    be a simple singly-linked list.

It is funny that it would have been obvious to test CONFIG_NETFILTER_INGRESS=n since there is an ifdef right in the first hunk of the patch.

        struct netdev_queue __rcu *ingress_queue;
 #ifdef CONFIG_NETFILTER_INGRESS
-       struct list_head        nf_hooks_ingress;
+       struct nf_hook_entry __rcu *nf_hooks_ingress;
 #endif

Regards

Marcel

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ