Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Pull networking changes from David Miller: "Ok, we should be good to go now" 1) We have to statically initialize the init_net device list head rather than do so in an initcall, otherwise netprio_cgroup crashes if it's built statically rather than modular (Mark D. Rustad) 2) Fix SKB null oopser in CIPSO ipv4 option processing (Paul Moore) 3) Qlogic maintainers update (Anirban Chakraborty) * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: net: Statically initialize init_net.dev_base_head MAINTAINERS: Changes in qlcnic and qlge maintainers list cipso: don't follow a NULL pointer when setsockopt() is called
This commit is contained in:
commit
309d4b000b
4 changed files with 10 additions and 6 deletions
|
@ -5565,7 +5565,7 @@ F: Documentation/networking/LICENSE.qla3xxx
|
|||
F: drivers/net/ethernet/qlogic/qla3xxx.*
|
||||
|
||||
QLOGIC QLCNIC (1/10)Gb ETHERNET DRIVER
|
||||
M: Anirban Chakraborty <anirban.chakraborty@qlogic.com>
|
||||
M: Jitendra Kalsaria <jitendra.kalsaria@qlogic.com>
|
||||
M: Sony Chacko <sony.chacko@qlogic.com>
|
||||
M: linux-driver@qlogic.com
|
||||
L: netdev@vger.kernel.org
|
||||
|
@ -5573,7 +5573,6 @@ S: Supported
|
|||
F: drivers/net/ethernet/qlogic/qlcnic/
|
||||
|
||||
QLOGIC QLGE 10Gb ETHERNET DRIVER
|
||||
M: Anirban Chakraborty <anirban.chakraborty@qlogic.com>
|
||||
M: Jitendra Kalsaria <jitendra.kalsaria@qlogic.com>
|
||||
M: Ron Mercer <ron.mercer@qlogic.com>
|
||||
M: linux-driver@qlogic.com
|
||||
|
|
|
@ -6283,7 +6283,8 @@ static struct hlist_head *netdev_create_hash(void)
|
|||
/* Initialize per network namespace state */
|
||||
static int __net_init netdev_init(struct net *net)
|
||||
{
|
||||
INIT_LIST_HEAD(&net->dev_base_head);
|
||||
if (net != &init_net)
|
||||
INIT_LIST_HEAD(&net->dev_base_head);
|
||||
|
||||
net->dev_name_head = netdev_create_hash();
|
||||
if (net->dev_name_head == NULL)
|
||||
|
|
|
@ -27,7 +27,9 @@ static DEFINE_MUTEX(net_mutex);
|
|||
LIST_HEAD(net_namespace_list);
|
||||
EXPORT_SYMBOL_GPL(net_namespace_list);
|
||||
|
||||
struct net init_net;
|
||||
struct net init_net = {
|
||||
.dev_base_head = LIST_HEAD_INIT(init_net.dev_base_head),
|
||||
};
|
||||
EXPORT_SYMBOL(init_net);
|
||||
|
||||
#define INITIAL_NET_GEN_PTRS 13 /* +1 for len +2 for rcu_head */
|
||||
|
|
|
@ -1725,8 +1725,10 @@ int cipso_v4_validate(const struct sk_buff *skb, unsigned char **option)
|
|||
case CIPSO_V4_TAG_LOCAL:
|
||||
/* This is a non-standard tag that we only allow for
|
||||
* local connections, so if the incoming interface is
|
||||
* not the loopback device drop the packet. */
|
||||
if (!(skb->dev->flags & IFF_LOOPBACK)) {
|
||||
* not the loopback device drop the packet. Further,
|
||||
* there is no legitimate reason for setting this from
|
||||
* userspace so reject it if skb is NULL. */
|
||||
if (skb == NULL || !(skb->dev->flags & IFF_LOOPBACK)) {
|
||||
err_offset = opt_iter;
|
||||
goto validate_return_locked;
|
||||
}
|
||||
|
|
Reference in a new issue