1. 21 3月, 2013 4 次提交
    • T
      l2tp: export l2tp_tunnel_closeall · e34f4c70
      Tom Parkin 提交于
      l2tp_core internally uses l2tp_tunnel_closeall to close all sessions in a
      tunnel when a UDP-encapsulation socket is destroyed.  We need to do something
      similar for IP-encapsulation sockets.
      
      Export l2tp_tunnel_closeall as a GPL symbol to enable l2tp_ip and l2tp_ip6 to
      call it from their .destroy handlers.
      Signed-off-by: NTom Parkin <tparkin@katalix.com>
      Signed-off-by: NJames Chapman <jchapman@katalix.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e34f4c70
    • T
      l2tp: add udp encap socket destroy handler · 9980d001
      Tom Parkin 提交于
      L2TP sessions hold a reference to the tunnel socket to prevent it going away
      while sessions are still active.  However, since tunnel destruction is handled
      by the sock sk_destruct callback there is a catch-22: a tunnel with sessions
      cannot be deleted since each session holds a reference to the tunnel socket.
      If userspace closes a managed tunnel socket, or dies, the tunnel will persist
      and it will be neccessary to individually delete the sessions using netlink
      commands.  This is ugly.
      
      To prevent this occuring, this patch leverages the udp encapsulation socket
      destroy callback to gain early notification when the tunnel socket is closed.
      This allows us to safely close the sessions running in the tunnel, dropping
      the tunnel socket references in the process.  The tunnel socket is then
      destroyed as normal, and the tunnel resources deallocated in sk_destruct.
      
      While we're at it, ensure that l2tp_tunnel_closeall correctly drops session
      references to allow the sessions to be deleted rather than leaking.
      Signed-off-by: NTom Parkin <tparkin@katalix.com>
      Signed-off-by: NJames Chapman <jchapman@katalix.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9980d001
    • T
      udp: add encap_destroy callback · 44046a59
      Tom Parkin 提交于
      Users of udp encapsulation currently have an encap_rcv callback which they can
      use to hook into the udp receive path.
      
      In situations where a encapsulation user allocates resources associated with a
      udp encap socket, it may be convenient to be able to also hook the proto
      .destroy operation.  For example, if an encap user holds a reference to the
      udp socket, the destroy hook might be used to relinquish this reference.
      
      This patch adds a socket destroy hook into udp, which is set and enabled
      in the same way as the existing encap_rcv hook.
      Signed-off-by: NTom Parkin <tparkin@katalix.com>
      Signed-off-by: NJames Chapman <jchapman@katalix.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      44046a59
    • M
      genetlink: trigger BUG_ON if a group name is too long · f1e79e20
      Masatake YAMATO 提交于
      Trigger BUG_ON if a group name is longer than GENL_NAMSIZ.
      Signed-off-by: NMasatake YAMATO <yamato@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f1e79e20
  2. 20 3月, 2013 10 次提交
    • D
      Merge branch 'master' of git://1984.lsi.us.es/nf · 90b2621f
      David S. Miller 提交于
      Pablo Neira Ayuso says:
      
      ====================
      The following patchset contains 7 Netfilter/IPVS fixes for 3.9-rc, they are:
      
      * Restrict IPv6 stateless NPT targets to the mangle table. Many users are
        complaining that this target does not work in the nat table, which is the
        wrong table for it, from Florian Westphal.
      
      * Fix possible use before initialization in the netns init path of several
        conntrack protocol trackers (introduced recently while improving conntrack
        netns support), from Gao Feng.
      
      * Fix incorrect initialization of copy_range in nfnetlink_queue, spotted
        by Eric Dumazet during the NFWS2013, patch from myself.
      
      * Fix wrong calculation of next SCTP chunk in IPVS, from Julian Anastasov.
      
      * Remove rcu_read_lock section in IPVS while calling ipv4_update_pmtu
        not required anymore after change introduced in 3.7, again from Julian.
      
      * Fix SYN looping in IPVS state sync if the backup is used a real server
        in DR/TUN modes, this required a new /proc entry to disable the director
        function when acting as backup, also from Julian.
      
      * Remove leftover IP_NF_QUEUE Kconfig after ip_queue removal, noted by
        Paul Bolle.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      90b2621f
    • P
      netfilter: remove unused "config IP_NF_QUEUE" · 3dd6664f
      Paul Bolle 提交于
      Kconfig symbol IP_NF_QUEUE is unused since commit
      d16cf20e ("netfilter: remove ip_queue
      support"). Let's remove it too.
      Signed-off-by: NPaul Bolle <pebolle@tiscali.nl>
      Signed-off-by: NPablo Neira Ayuso <pablo@netfilter.org>
      3dd6664f
    • L
      Merge tag 'for-linus-v3.9-rc4' of git://oss.sgi.com/xfs/xfs · 10b38669
      Linus Torvalds 提交于
      Pull XFS fixes from Ben Myers:
      
       - Fix for a potential infinite loop which was introduced in commit
         4d559a3b ("xfs: limit speculative prealloc near ENOSPC
         thresholds")
      
       - Fix for the return type of xfs_iomap_eof_prealloc_initial_size from
         commit a1e16c26 ("xfs: limit speculative prealloc size on sparse
         files")
      
       - Fix for a failed buffer readahead causing subsequent callers to fail
         incorrectly
      
      * tag 'for-linus-v3.9-rc4' of git://oss.sgi.com/xfs/xfs:
        xfs: ensure we capture IO errors correctly
        xfs: fix xfs_iomap_eof_prealloc_initial_size type
        xfs: fix potential infinite loop in xfs_iomap_prealloc_size()
      10b38669
    • M
      PCI: Use ROM images from firmware only if no other ROM source available · 547b5246
      Matthew Garrett 提交于
      Mantas Mikulėnas reported that his graphics hardware failed to
      initialise after commit f9a37be0 ("x86: Use PCI setup data").
      
      The aim of this commit was to ensure that ROM images were available on
      some Apple systems that don't expose the GPU ROM via any other source.
      In this case, UEFI appears to have provided a broken ROM image that we
      were using even though there was a perfectly valid ROM available via
      other sources.  The simplest way to handle this seems to be to just
      re-order pci_map_rom() and leave any firmare-supplied ROM to last.
      Signed-off-by: NMatthew Garrett <matthew.garrett@nebula.com>
      Tested-by: NMantas Mikulėnas <grawity@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      547b5246
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc · 5c7c3361
      Linus Torvalds 提交于
      Pull sparc fixes from David Miller:
       "Just some minor fixups, a sunsu console setup panic cure, and
        recognition of a Fujitsu sun4v cpu."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
        sparc: remove unused "config BITS"
        sparc: delete "if !ULTRA_HAS_POPULATION_COUNT"
        sparc64: correctly recognize SPARC64-X chips
        sparc,leon: fix GRPCI2 device0 PCI config space access
        sunsu: Fix panic in case of nonexistent port at "console=ttySY" cmdline option
      5c7c3361
    • L
      Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64 · e7489622
      Linus Torvalds 提交于
      Pull arm64 fixes from Catalin Marinas:
      
       - Fix !SMP build error.
      
       - Fix padding computation in struct ucontext (no ABI change).
      
       - Minor clean-up after the signal patches (unused var).
      
       - Two old Kconfig options clean-up.
      
      * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas/linux-aarch64:
        arm64: Kconfig.debug: Remove unused CONFIG_DEBUG_ERRORS
        arm64: Do not select GENERIC_HARDIRQS_NO_DEPRECATED
        arm64: fix padding computation in struct ucontext
        arm64: Fix build error with !SMP
        arm64: Removed unused variable in compat_setup_rt_frame()
      e7489622
    • P
      sparc: remove unused "config BITS" · f58b20bd
      Paul Bolle 提交于
      sparc's asm/module.h got removed in commit
      786d35d4 ("Make most arch asm/module.h
      files use asm-generic/module.h"). That removed the only two uses of this
      Kconfig symbol. So we can remove its entry too.
      
      > >From arch/sparc/Makefile:
      >     ifeq ($(CONFIG_SPARC32),y)
      >     [...]
      >
      >     [...]
      >     export BITS    := 32
      >     [...]
      >
      >     else
      >     [...]
      >
      >     [...]
      >     export BITS   := 64
      >     [...]
      >
      > So $(BITS) is set depending on whether CONFIG_SPARC32 is set or not.
      > Using $(BITS) in sparc's Makefiles is not using CONFIG_BITS. That
      > doesn't count as usage of "config BITS".
      Signed-off-by: NPaul Bolle <pebolle@tiscali.nl>
      Acked-by: NSam Ravnborg <sam@ravnborg.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f58b20bd
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 7b1b3fd7
      Linus Torvalds 提交于
      Pull networking fixes from David Miller:
      
       1) Fix ARM BPF JIT handling of negative 'k' values, from Chen Gang.
      
       2) Insufficient space reserved for bridge netlink values, fix from
          Stephen Hemminger.
      
       3) Some dst_neigh_lookup*() callers don't interpret error pointer
          correctly, fix from Zhouyi Zhou.
      
       4) Fix transport match in SCTP active_path loops, from Xugeng Zhang.
      
       5) Fix qeth driver handling of multi-order SKB frags, from Frank
          Blaschka.
      
       6) fec driver is missing napi_disable() call, resulting in crashes on
          unload, from Georg Hofmann.
      
       7) Don't try to handle PMTU events on a listening socket, fix from Eric
          Dumazet.
      
       8) Fix timestamp location calculations in IP option processing, from
          David Ward.
      
       9) FIB_TABLE_HASHSZ setting is not controlled by the correct kconfig
          tests, from Denis V Lunev.
      
      10) Fix TX descriptor push handling in SFC driver, from Ben Hutchings.
      
      11) Fix isdn/hisax and tulip/de4x5 kconfig dependencies, from Arnd
          Bergmann.
      
      12) bnx2x statistics don't handle 4GB rollover correctly, fix from
          Maciej Żenczykowski.
      
      13) Openvswitch bug fixes for vport del/new error reporting, missing
          genlmsg_end() call in netlink processing, and mis-parsing of
          LLC/SNAP ethernet types.  From Rich Lane.
      
      14) SKB pfmemalloc state should only be propagated from the head page of
          a compound page, fix from Pavel Emelyanov.
      
      15) Fix link handling in tg3 driver for 5715 chips when autonegotation
          is disabled.  From Nithin Sujir.
      
      16) Fix inverted test of cpdma_check_free_tx_desc return value in
          davinci_emac driver, from Mugunthan V N.
      
      17) vlan_depth is incorrectly calculated in skb_network_protocol(), from
          Li RongQing.
      
      18) Fix probing of Gobi 1K devices in qmi_wwan driver, and fix NCM
          device mode backwards compat in cdc_ncm driver.  From Bjørn Mork.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (52 commits)
        inet: limit length of fragment queue hash table bucket lists
        qeth: Fix scatter-gather regression
        qeth: Fix invalid router settings handling
        qeth: delay feature trace
        tcp: dont handle MTU reduction on LISTEN socket
        bnx2x: fix occasional statistics off-by-4GB error
        vhost/net: fix heads usage of ubuf_info
        bridge: Add support for setting BR_ROOT_BLOCK flag.
        bnx2x: add missing napi deletion in error path
        drivers: net: ethernet: ti: davinci_emac: fix usage of cpdma_check_free_tx_desc()
        ethernet/tulip: DE4x5 needs VIRT_TO_BUS
        isdn: hisax: netjet requires VIRT_TO_BUS
        net: cdc_ncm, cdc_mbim: allow user to prefer NCM for backwards compatibility
        rtnetlink: Mask the rta_type when range checking
        Revert "ip_gre: make ipgre_tunnel_xmit() not parse network header as IP unconditionally"
        Fix dst_neigh_lookup/dst_neigh_lookup_skb return value handling bug
        smsc75xx: configuration help incorrectly mentions smsc95xx
        net: fec: fix missing napi_disable call
        net: fec: restart the FEC when PHY speed changes
        skb: Propagate pfmemalloc on skb from head page only
        ...
      7b1b3fd7
    • P
      sparc: delete "if !ULTRA_HAS_POPULATION_COUNT" · e0b20296
      Paul Bolle 提交于
      Commit 2d78d4be ("[PATCH] bitops:
      sparc64: use generic bitops") made the default of GENERIC_HWEIGHT depend
      on !ULTRA_HAS_POPULATION_COUNT. But since there's no Kconfig symbol with
      that name, this always evaluates to true. Delete this dependency.
      Signed-off-by: NPaul Bolle <pebolle@tiscali.nl>
      Acked-by: NSam Ravnborg <sam@ravnborg.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e0b20296
    • P
      arm64: Kconfig.debug: Remove unused CONFIG_DEBUG_ERRORS · 79207206
      Paul Bolle 提交于
      The Kconfig entry for DEBUG_ERRORS is a verbatim copy of the former arm
      entry for that symbol. It got removed in v2.6.39 because it wasn't
      actually used anywhere. There are still no users of DEBUG_ERRORS so
      remove this entry too.
      Signed-off-by: NPaul Bolle <pebolle@tiscali.nl>
      [catalin.marinas@arm.com: removed option from defconfig]
      Signed-off-by: NCatalin Marinas <catalin.marinas@arm.com>
      79207206
  3. 19 3月, 2013 19 次提交
  4. 18 3月, 2013 7 次提交
    • L
      Merge tag 'for-linus-20130318' of git://git.infradead.org/linux-mtd · 35f8c769
      Linus Torvalds 提交于
      Pull MTD fixes from David Woodhouse:
       "This fixes a couple of problems.  Firstly, some people are actually
        still using old small-page flash and we broke it by removing the ready
        check.
      
        Secondly.  fix the handling of partitions on Broadcom 47xx devices.
        Recent changes had made it misdetect the location of the NVRAM and
        scribble over the bootloader when it tried to update the variables
        there.  With predictably sad results."
      
      * tag 'for-linus-20130318' of git://git.infradead.org/linux-mtd:
        mtd: nand: reintroduce NAND_NO_READRDY as NAND_NEED_READRDY
        mtd: bcm47xxpart: look for NVRAM at the end of device
        Revert "mtd: bcm47xxpart: improve probing of nvram partition"
      35f8c769
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 4b767155
      Linus Torvalds 提交于
      Pull selinux bugfix from James Morris.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        selinux: use GFP_ATOMIC under spin_lock
      4b767155
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 991657a3
      Linus Torvalds 提交于
      Pull s390 fixes from Martin Schwidefsky:
       "A couple of bug fixes, the most hairy on is the flush_tlb_kernel_range
        fix.  Another case of "how could this ever have worked?"."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/kdump: Do not add standby memory for kdump
        drivers/i2c: remove !S390 dependency, add missing GENERIC_HARDIRQS dependencies
        s390/scm: process availability
        s390/scm_blk: suspend writes
        s390/scm_drv: extend notify callback
        s390/scm_blk: fix request number accounting
        s390/mm: fix flush_tlb_kernel_range()
        s390/mm: fix vmemmap size calculation
        s390: critical section cleanup vs. machine checks
      991657a3
    • L
      Merge tag 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 1c6ba37b
      Linus Torvalds 提交于
      Pull ARM SoC bug fixes from Arnd Bergmann:
       "Things are calming down for arm-soc as well.  This set of bug fixes is
        dominated in size by the at91 platform bug fixes.  Some of them were
        meant to go through the framebuffer tree during the merge window, but
        since the framebuffer maintainer could not be reached, I offered to
        take them here.  The other notable at91 change is the addition of
        pinctrl definitions to fix the NAND controller.
      
        The rest are mostly simple regression fixes:
      
         - Our removal of VIRT_TO_BUS conflicted with Stephen Rothwell's
           renaming of the Kconfig symbol.  You will get a trivial merge
           conflict here, we still want to remove it.
         - missing bits for clocks on imx and s5pv210
         - missing header inclusions in mmp and shmobile
         - typos in s5pv210 camera and vt8500 clock support code
      
        and three trivial fixes for pre-3.8 bugs:
      
         - an old bogus build warning in the joystick driver
         - a misleading Kconfig description
         - a NULL pointer check on davinci"
      
      * tag 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: fix CONFIG_VIRT_TO_BUS handling
        ARM: i.MX35: enable MAX clock
        ARM: Scorpion is a v7 architecture, not v6
        ARM: mmp: add platform_device head file in gplugd
        input/joystick: use get_cycles on ARM
        [media] s5p-fimc: fix s5pv210 build
        clk: vt8500: Fix "fix device clock divisor calculations"
        ARM: i.MX25: Fix DT compilation
        ARM: at91: fix infinite loop in at91_irq_suspend/resume
        ARM: at91: add gpio suspend/resume support when using pinctrl
        ARM: at91: fix LCD-wiring mode
        atmel_lcdfb: fix 16-bpp modes on older SOCs
        ARM: at91: dt: at91sam9x5: complete NAND pinctrl
        ARM: at91: dt: at91sam9x5: correct NAND pins comments
        ARM: davinci: edma: fix dmaengine induced null pointer dereference on da830
        ARM: shmobile: marzen: Include mmc/host.h
        ARM: EXYNOS: Add #dma-cells for generic dma binding support for PL330
        ARM: S5PV210: Fix PL330 DMA controller clkdev entries
      1c6ba37b
    • L
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · a15cd063
      Linus Torvalds 提交于
      Pull powerpc fixes from Ben Herrenschmidt:
       "Here's a few powerpc fixes for 3.9, mostly regressions (though not all
        from 3.9 merge window) that we've been hammering into shape over the
        last couple of weeks.  They fix booting on Cell and G5 among other
        things (yes, we've been a bit sloppy with older machines this time
        around)."
      
      * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
        powerpc: Rename USER_ESID_BITS* to ESID_BITS*
        powerpc: Update kernel VSID range
        powerpc: Make VSID_BITS* dependency explicit
        powerpc: Make sure that we alays include CONFIG_BINFMT_ELF
        powerpc/ptrace: Fix brk.len used uninitialised
        powerpc: Fix -mcmodel=medium breakage in prom_init.c
        powerpc: Remove last traces of POWER4_ONLY
        powerpc: Fix cputable entry for 970MP rev 1.0
        powerpc: Fix STAB initialization
      a15cd063
    • L
      Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-arm · 6210d421
      Linus Torvalds 提交于
      Pull ARM fixes from Russell King:
       "Just three fixes this time - a fix for a fix for our memset function,
        fixing the dummy clockevent so that it doesn't interfere with real
        hardware clockevents, and fixing a build error for Tegra."
      
      * 'fixes' of git://git.linaro.org/people/rmk/linux-arm:
        ARM: 7675/1: amba: tegra-ahb: Fix build error w/ PM_SLEEP w/o PM_RUNTIME
        ARM: 7674/1: smp: Avoid dummy clockevent being preferred over real hardware clock-event
        ARM: 7670/1: fix the memset fix
      6210d421
    • A
      ARM: fix CONFIG_VIRT_TO_BUS handling · b4811bac
      Arnd Bergmann 提交于
      887cbce0 "arch Kconfig: centralise CONFIG_ARCH_NO_VIRT_TO_BUS"
      and  4febd95a "Select VIRT_TO_BUS directly where needed" from
      Stephen Rothwell changed globally how CONFIG_VIRT_TO_BUS is
      selected, while my own a5d533ee "ARM: disable virt_to_bus/
      virt_to_bus almost everywhere" was merged at the same time and
      changed which platforms select it on ARM.
      
      The result of this conflict was that we again see CONFIG_VIRT_TO_BUS
      on all ARM systems. This patch fixes up the problem and removes
      CONFIG_ARCH_NO_VIRT_TO_BUS again on ARM.
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      b4811bac