]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
authorDavid S. Miller <davem@davemloft.net>
Fri, 4 Dec 2015 02:03:21 +0000 (21:03 -0500)
committerDavid S. Miller <davem@davemloft.net>
Fri, 4 Dec 2015 02:09:12 +0000 (21:09 -0500)
Conflicts:
drivers/net/ethernet/renesas/ravb_main.c
kernel/bpf/syscall.c
net/ipv4/ipmr.c

All three conflicts were cases of overlapping changes.

Signed-off-by: David S. Miller <davem@davemloft.net>
38 files changed:
1  2 
MAINTAINERS
crypto/algif_aead.c
crypto/algif_skcipher.c
drivers/net/can/xilinx_can.c
drivers/net/ethernet/Kconfig
drivers/net/ethernet/Makefile
drivers/net/ethernet/apm/xgene/xgene_enet_main.c
drivers/net/ethernet/atheros/alx/main.c
drivers/net/ethernet/broadcom/bnx2x/bnx2x_main.c
drivers/net/ethernet/broadcom/bnxt/bnxt.c
drivers/net/ethernet/freescale/gianfar.c
drivers/net/ethernet/marvell/mvneta.c
drivers/net/ethernet/renesas/ravb_main.c
drivers/net/vrf.c
drivers/net/wireless/intel/iwlwifi/iwl-7000.c
drivers/net/wireless/intel/iwlwifi/iwl-8000.c
drivers/net/wireless/intel/iwlwifi/mvm/d3.c
drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c
drivers/net/wireless/intel/iwlwifi/mvm/sta.c
drivers/net/wireless/intel/iwlwifi/mvm/sta.h
drivers/net/wireless/intel/iwlwifi/pcie/drv.c
include/linux/netdevice.h
include/net/sock.h
kernel/bpf/syscall.c
net/bluetooth/af_bluetooth.c
net/core/sock.c
net/core/stream.c
net/ipv4/ipmr.c
net/ipv6/addrconf.c
net/ipv6/route.c
net/ipv6/tcp_ipv6.c
net/iucv/af_iucv.c
net/openvswitch/vport-netdev.c
net/sctp/socket.c
net/tipc/link.c
net/tipc/socket.c
net/tipc/udp_media.c
net/unix/af_unix.c

diff --cc MAINTAINERS
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 2c613d36787355cf3b6b5cd6e29b08f879329635,ed5da4d476684d502a7d83469ee83566635d3d46..be019e769c833cf5d00ed0d6890e9467dfb9f7d7
@@@ -1245,11 -1242,12 +1245,13 @@@ static int ravb_open(struct net_device 
  
  out_ptp_stop:
        /* Stop PTP Clock driver */
 -      ravb_ptp_stop(ndev);
 +      if (priv->chip_id == RCAR_GEN2)
 +              ravb_ptp_stop(ndev);
+ out_free_irq2:
+       if (priv->chip_id == RCAR_GEN3)
+               free_irq(priv->emac_irq, ndev);
  out_free_irq:
        free_irq(ndev->irq, ndev);
-       free_irq(priv->emac_irq, ndev);
  out_napi_off:
        napi_disable(&priv->napi[RAVB_NC]);
        napi_disable(&priv->napi[RAVB_BE]);
Simple merge
Simple merge
Simple merge
index 6d1407bc15310de92c7f5e63d359309c5b7d5830,3b39550d84856494d43aefe926457add41d2a435..637397059f763564b535cfda2e4eaa9bf1d34fad
@@@ -93,42 -101,20 +101,40 @@@ void bpf_map_put(struct bpf_map *map
        }
  }
  
- static int bpf_map_release(struct inode *inode, struct file *filp)
- {
-       struct bpf_map *map = filp->private_data;
-       if (map->map_type == BPF_MAP_TYPE_PROG_ARRAY)
-               /* prog_array stores refcnt-ed bpf_prog pointers
-                * release them all when user space closes prog_array_fd
-                */
-               bpf_fd_array_map_clear(map);
-       bpf_map_put(map);
-       return 0;
- }
+ void bpf_map_put_with_uref(struct bpf_map *map)
+ {
+       bpf_map_put_uref(map);
+       bpf_map_put(map);
+ }
+ static int bpf_map_release(struct inode *inode, struct file *filp)
+ {
+       bpf_map_put_with_uref(filp->private_data);
+       return 0;
+ }
 +#ifdef CONFIG_PROC_FS
 +static void bpf_map_show_fdinfo(struct seq_file *m, struct file *filp)
 +{
 +      const struct bpf_map *map = filp->private_data;
 +
 +      seq_printf(m,
 +                 "map_type:\t%u\n"
 +                 "key_size:\t%u\n"
 +                 "value_size:\t%u\n"
 +                 "max_entries:\t%u\n",
 +                 map->map_type,
 +                 map->key_size,
 +                 map->value_size,
 +                 map->max_entries);
 +}
 +#endif
 +
  static const struct file_operations bpf_map_fops = {
 -      .release = bpf_map_release,
 +#ifdef CONFIG_PROC_FS
 +      .show_fdinfo    = bpf_map_show_fdinfo,
 +#endif
 +      .release        = bpf_map_release,
  };
  
  int bpf_map_new_fd(struct bpf_map *map)
Simple merge
diff --cc net/core/sock.c
Simple merge
Simple merge
diff --cc net/ipv4/ipmr.c
index 4c10ee771648d0cd7924bf342caec41df6eb836d,c3a38353f5dc8094de5c1dcec06ae54ab0b29a9e..395e2814a46d9995b63b6bc703e28433ecc26c2b
@@@ -1188,24 -1196,30 +1180,25 @@@ static int ipmr_mfc_add(struct net *net
        return 0;
  }
  
 -/*
 - *    Close the multicast socket, and clear the vif tables etc
 - */
 -
 +/* Close the multicast socket, and clear the vif tables etc */
- static void mroute_clean_tables(struct mr_table *mrt)
+ static void mroute_clean_tables(struct mr_table *mrt, bool all)
  {
        int i;
        LIST_HEAD(list);
        struct mfc_cache *c, *next;
  
        /* Shut down all active vif entries */
 -
        for (i = 0; i < mrt->maxvif; i++) {
-               if (!(mrt->vif_table[i].flags & VIFF_STATIC))
-                       vif_delete(mrt, i, 0, &list);
+               if (!all && (mrt->vif_table[i].flags & VIFF_STATIC))
+                       continue;
+               vif_delete(mrt, i, 0, &list);
        }
        unregister_netdevice_many(&list);
  
        /* Wipe the cache */
 -
        for (i = 0; i < MFC_LINES; i++) {
                list_for_each_entry_safe(c, next, &mrt->mfc_cache_array[i], list) {
-                       if (c->mfc_flags & MFC_STATIC)
+                       if (!all && (c->mfc_flags & MFC_STATIC))
                                continue;
                        list_del_rcu(&c->list);
                        mroute_netlink_event(mrt, c, RTM_DELROUTE);
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc net/tipc/link.c
Simple merge
Simple merge
Simple merge
Simple merge