1. 11 1月, 2013 4 次提交
    • R
      ipv6: use addrconf_get_prefix_route for prefix route lookup [v2] · 21caa662
      Romain Kuntz 提交于
      Replace ip6_route_lookup() with addrconf_get_prefix_route() when
      looking up for a prefix route. This ensures that the connected prefix
      is looked up in the main table, and avoids the selection of other
      matching routes located in different tables as well as blackhole
      or prohibited entries.
      
      In addition, this fixes an Opps introduced by commit 64c6d08e (ipv6:
      del unreachable route when an addr is deleted on lo), that would occur
      when a blackhole or prohibited entry is selected by ip6_route_lookup().
      Such entries have a NULL rt6i_table argument, which is accessed by
      __ip6_del_rt() when trying to lock rt6i_table->tb6_lock.
      
      The function addrconf_is_prefix_route() is not used anymore and is
      removed.
      
      [v2] Minor indentation cleanup and log updates.
      Signed-off-by: NRomain Kuntz <r.kuntz@ipflavors.com>
      Acked-by: NNicolas Dichtel <nicolas.dichtel@6wind.com>
      Acked-by: NYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      21caa662
    • R
      ipv6: fix the noflags test in addrconf_get_prefix_route · 85da53bf
      Romain Kuntz 提交于
      The tests on the flags in addrconf_get_prefix_route() does no make
      much sense: the 'noflags' parameter contains the set of flags that
      must not match with the route flags, so the test must be done
      against 'noflags', and not against 'flags'.
      Signed-off-by: NRomain Kuntz <r.kuntz@ipflavors.com>
      Acked-by: NYOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      85da53bf
    • E
      tcp: fix splice() and tcp collapsing interaction · f26845b4
      Eric Dumazet 提交于
      Under unusual circumstances, TCP collapse can split a big GRO TCP packet
      while its being used in a splice(socket->pipe) operation.
      
      skb_splice_bits() releases the socket lock before calling
      splice_to_pipe().
      
      [ 1081.353685] WARNING: at net/ipv4/tcp.c:1330 tcp_cleanup_rbuf+0x4d/0xfc()
      [ 1081.371956] Hardware name: System x3690 X5 -[7148Z68]-
      [ 1081.391820] cleanup rbuf bug: copied AD3BCF1 seq AD370AF rcvnxt AD3CF13
      
      To fix this problem, we must eat skbs in tcp_recv_skb().
      
      Remove the inline keyword from tcp_recv_skb() definition since
      it has three call sites.
      Reported-by: NChristian Becker <c.becker@traviangames.com>
      Cc: Willy Tarreau <w@1wt.eu>
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Tested-by: NWilly Tarreau <w@1wt.eu>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f26845b4
    • E
      tcp: splice: fix an infinite loop in tcp_read_sock() · ff905b1e
      Eric Dumazet 提交于
      commit 02275a2e (tcp: don't abort splice() after small transfers)
      added a regression.
      
      [   83.843570] INFO: rcu_sched self-detected stall on CPU
      [   83.844575] INFO: rcu_sched detected stalls on CPUs/tasks: { 6} (detected by 0, t=21002 jiffies, g=4457, c=4456, q=13132)
      [   83.844582] Task dump for CPU 6:
      [   83.844584] netperf         R  running task        0  8966   8952 0x0000000c
      [   83.844587]  0000000000000000 0000000000000006 0000000000006c6c 0000000000000000
      [   83.844589]  000000000000006c 0000000000000096 ffffffff819ce2bc ffffffffffffff10
      [   83.844592]  ffffffff81088679 0000000000000010 0000000000000246 ffff880c4b9ddcd8
      [   83.844594] Call Trace:
      [   83.844596]  [<ffffffff81088679>] ? vprintk_emit+0x1c9/0x4c0
      [   83.844601]  [<ffffffff815ad449>] ? schedule+0x29/0x70
      [   83.844606]  [<ffffffff81537bd2>] ? tcp_splice_data_recv+0x42/0x50
      [   83.844610]  [<ffffffff8153beaa>] ? tcp_read_sock+0xda/0x260
      [   83.844613]  [<ffffffff81537b90>] ? tcp_prequeue_process+0xb0/0xb0
      [   83.844615]  [<ffffffff8153c0f0>] ? tcp_splice_read+0xc0/0x250
      [   83.844618]  [<ffffffff814dc0c2>] ? sock_splice_read+0x22/0x30
      [   83.844622]  [<ffffffff811b820b>] ? do_splice_to+0x7b/0xa0
      [   83.844627]  [<ffffffff811ba4bc>] ? sys_splice+0x59c/0x5d0
      [   83.844630]  [<ffffffff8119745b>] ? putname+0x2b/0x40
      [   83.844633]  [<ffffffff8118bcb4>] ? do_sys_open+0x174/0x1e0
      [   83.844636]  [<ffffffff815b6202>] ? system_call_fastpath+0x16/0x1b
      
      if recv_actor() returns 0, we should stop immediately,
      because looping wont give a chance to drain the pipe.
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Cc: Willy Tarreau <w@1wt.eu>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ff905b1e
  2. 10 1月, 2013 1 次提交
  3. 09 1月, 2013 1 次提交
  4. 08 1月, 2013 15 次提交
    • L
      Merge tag 'sound-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · ed2c8911
      Linus Torvalds 提交于
      Pull sound fixes from Takashi Iwai:
       "Nothing too exciting here, just a few regression and trivial fixes,
        and new quirks for HD-audio and USB-audio.
      
         - HD-audio mute LED mode enum fix
         - Fix kernel panic of Digidesign Mbox2 usb-audio quirk (which was new
           in 3.8-rc1)
         - Creative BT-D1 usb-audio quirk
         - mute LED fixup for HP Pavillion 17 laptop"
      
      * tag 'sound-3.8' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: hda - add mute LED for HP Pavilion 17 (Realtek codec)
        ALSA: au88x0: fix incorrect left shift
        sound: oss/pas2: Fix possible access out of array
        ALSA: usb-audio: Fix kernel panic of Digidesign Mbox2 quirk
        ALSA: usb-audio: Add support for Creative BT-D1 via usb sound quirks
        ALSA: hda - Switch "On" and "Off" for "Mute-LED Mode" kcontrol
      ed2c8911
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 5c33d9b2
      Linus Torvalds 提交于
      Pull networking fixes from David Miller:
      
       1) New sysctl ndisc_notify needs some documentation, from Hanns
          Frederic Sowa.
      
       2) Netfilter REJECT target doesn't set transport header of SKB
          correctly, from Mukund Jampala.
      
       3) Forcedeth driver needs to check for DMA mapping failures, from Larry
          Finger.
      
       4) brcmsmac driver can't use usleep_range while holding locks, use
          udelay instead.  From Niels Ole Salscheider.
      
       5) Fix unregister of netlink bridge multicast database handlers, from
          Vlad Yasevich and Rami Rosen.
      
       6) Fix checksum calculations in netfilter's ipv6 network prefix
          translation module.
      
       7) Fix high order page allocation failures in netfilter xt_recent, from
          Eric Dumazet.
      
       8) mac802154 needs to use netif_rx_ni() instead of netif_rx() because
          mac802154_process_data() can execute in process rather than
          interrupt context.  From Alexander Aring.
      
       9) Fix splice handling of MSG_SENDPAGE_NOTLAST, otherwise we elide one
          tcp_push() too many.  From Eric Dumazet and Willy Tarreau.
      
      10) Fix skb->truesize tracking in XEN netfront driver, from Ian
          Campbell.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (46 commits)
        xen/netfront: improve truesize tracking
        ipv4: fix NULL checking in devinet_ioctl()
        tcp: fix MSG_SENDPAGE_NOTLAST logic
        net/ipv4/ipconfig: really display the BOOTP/DHCP server's address.
        ip-sysctl: fix spelling errors
        mac802154: fix NOHZ local_softirq_pending 08 warning
        ipv6: document ndisc_notify in networking/ip-sysctl.txt
        ath9k: Fix Kconfig for ATH9K_HTC
        netfilter: xt_recent: avoid high order page allocations
        netfilter: fix missing dependencies for the NOTRACK target
        netfilter: ip6t_NPT: fix IPv6 NTP checksum calculation
        bridge: add empty br_mdb_init() and br_mdb_uninit() definitions.
        vxlan: allow live mac address change
        bridge: Correctly unregister MDB rtnetlink handlers
        brcmfmac: fix parsing rsn ie for ap mode.
        brcmsmac: add copyright information for Canonical
        rtlwifi: rtl8723ae: Fix warning for unchecked pci_map_single() call
        rtlwifi: rtl8192se: Fix warning for unchecked pci_map_single() call
        rtlwifi: rtl8192de: Fix warning for unchecked pci_map_single() call
        rtlwifi: rtl8192ce: Fix warning for unchecked pci_map_single() call
        ...
      5c33d9b2
    • I
      xen/netfront: improve truesize tracking · d9a58a78
      Ian Campbell 提交于
      Using RX_COPY_THRESHOLD is incorrect if the SKB is actually smaller
      than that. We have already accounted for this in
      NETFRONT_SKB_CB(skb)->pull_to so use that instead.
      
      Fixes WARN_ON from skb_try_coalesce.
      Signed-off-by: NIan Campbell <ian.campbell@citrix.com>
      Cc: Sander Eikelenboom <linux@eikelenboom.it>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: annie li <annie.li@oracle.com>
      Cc: xen-devel@lists.xen.org
      Cc: netdev@vger.kernel.org
      Cc: stable@kernel.org # 3.7.x only
      Acked-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d9a58a78
    • D
      Merge branch 'master' of git://1984.lsi.us.es/nf · 32fa10b2
      David S. Miller 提交于
      Pablo Neira Ayuso says:
      
      ====================
      The following batch contains Netfilter fixes for 3.8-rc2, they are:
      
      * Fix IPv6 stateless network/port translation (NPT) checksum
        calculation, from Ulrich Weber.
      
      * Fix for xt_recent to avoid memory allocation failures if large
        hashtables are used, from Eric Dumazet.
      
      * Fix missing dependencies in Kconfig for the deprecated NOTRACK,
        from myself.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      32fa10b2
    • L
      Merge tag 'pm+acpi-for-3.8-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 2a893f91
      Linus Torvalds 提交于
      Pull ACPI and power management fixes from Rafael Wysocki:
      
       - Removal of some ACPICA code that the kernel will never use from Lv
         Zheng.
      
       - APEI fix from Adrian Huang.
      
       - Removal of unnecessary ACPI memory hotplug driver code from Liu
         Jinsong.
      
       - Minor ACPI power management fixes.
      
       - ACPI debug code fix from Joe Perches.
      
       - ACPI fix to make system bus device nodes get the right names.
      
       - PNP resources handling fixes from Witold Szczeponik.
      
       - cpuidle fix for a recent regression stalling boot on systems with
         great numbers of CPUs from Daniel Lezcano.
      
       - cpuidle fixes from Sivaram Nair.
      
       - intel_idle debug message fix from Youquan Song.
      
       - cpufreq build regression fix from Larry Finger.
      
       - cpufreq fix for an obscure initialization race related to statistics
         from Konstantin Khlebnikov.
      
       - cpufreq change disabling the Longhaul driver by default from Rafał
         Bilski.
      
       - PM core fix preventing device suspend errors from happening during
         system suspend due to obscure race conditions.
      
       - PM QoS local variable name cleanup.
      
      * tag 'pm+acpi-for-3.8-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        PM: Move disabling/enabling runtime PM to late suspend/early resume
        PM / QoS: Rename local variable in dev_pm_qos_add_ancestor_request()
        ACPI / scan: Do not use dummy HID for system bus ACPI nodes
        cpufreq / governor: Fix problem with cpufreq_ondemand or cpufreq_conservative
        cpufreq / Longhaul: Disable driver by default
        cpufreq / stats: fix race between stats allocation and first usage
        cpuidle: fix lock contention in the idle path
        intel_idle: pr_debug information need separated
        cpuidle / coupled: fix ready counter decrement
        cpuidle: Fix finding state with min power_usage
        PNP: Handle IORESOURCE_BITS in resource allocation
        PNP: Simplify setting of resources
        ACPI / power: Remove useless message from device registering routine
        ACPI / glue: Update DBG macro to include KERN_DEBUG
        ACPI / PM: Do not apply ACPI_SUCCESS() to acpi_bus_get_device() result
        ACPI / memhotplug: remove redundant logic of acpi memory hotadd
        ACPI / APEI: Fix the returned value in erst_dbg_read
        ACPICA: Remove useless mini-C library.
      2a893f91
    • L
      Merge branch 'for-next' of git://git.samba.org/sfrench/cifs-2.6 · 127aa930
      Linus Torvalds 提交于
      Pull CIFS fixes from Steve French:
       "Misc small cifs fixes"
      
      * 'for-next' of git://git.samba.org/sfrench/cifs-2.6:
        CIFS: Don't let read only caching for mandatory byte-range locked files
        CIFS: Fix write after setting a read lock for read oplock files
        Revert "CIFS: Fix write after setting a read lock for read oplock files"
        cifs: adjust sequence number downward after signing NT_CANCEL request
        cifs: move check for NULL socket into smb_send_rqst
      127aa930
    • L
      b43: Fix firmware loading when driver is built into the kernel · 5e20a4b5
      Larry Finger 提交于
      Recent versions of udev cause synchronous firmware loading from the
      probe routine to fail because the request to user space would time
      out. The original fix for b43 (commit 6b6fa586) moved the firmware
      load from the probe routine to a work queue, but it still used synchronous
      firmware loading. This method is OK when b43 is built as a module;
      however, it fails when the driver is compiled into the kernel.
      
      This version changes the code to load the initial firmware file
      using request_firmware_nowait(). A completion event is used to
      hold the work queue until that file is available. This driver
      reads several firmware files - the remainder can be read synchronously.
      On some test systems, the async read fails; however, a following synch
      read works, thus the async failure falls through to the sync try.
      
      Reported-and-Tested by: Felix Janda <felix.janda@posteo.de>
      Signed-off-by: NLarry Finger <Larry.Finger@lwfinger.net>
      Cc: Stable <stable@vger.kernel.org>  (V3.4+)
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      5e20a4b5
    • C
      drivers/net/wireless/iwlegacy: use strlcpy instead of strncpy · 407ee237
      Chen Gang 提交于
        The fields must be null-terminated, or simple_strtoul will cause issue.
      Signed-off-by: NChen Gang <gang.chen@asianux.com>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      407ee237
    • N
      drivers/net/wireless/mwl8k.c: avoid use-after-free · c4f74d35
      Nickolai Zeldovich 提交于
      Do not dereference p->station_id after kfree(cmd) because p
      points into the cmd data structure.
      Signed-off-by: NNickolai Zeldovich <nickolai@csail.mit.edu>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      c4f74d35
    • J
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · d287b875
      Linus Torvalds 提交于
      Pull namei.h missing include fix from Al Viro.
      
      The new use of ESTALE in namei.h can cause compile failures on ARM with
      certain configurations due to lack of errno.h.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        namei.h: include errno.h
      d287b875
    • A
      sctp: fix Kconfig bug in default cookie hmac selection · 36a25de2
      Alex Elder 提交于
      Commit 0d0863b0 ("sctp: Change defaults on cookie hmac selection")
      added a "choice" to the sctp Kconfig file.  It introduced a bug which
      led to an infinite loop when while running "make oldconfig".
      
      The problem is that the wrong symbol was defined as the default value
      for the choice.  Using the correct value gets rid of the infinite loop.
      
      Note:  if CONFIG_SCTP_COOKIE_HMAC_SHA1=y was present in the input
      config file, both that and CONFIG_SCTP_COOKIE_HMAC_MD5=y be present
      in the generated config file.
      Signed-off-by: NAlex Elder <elder@inktank.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      36a25de2
    • L
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · f7763720
      Linus Torvalds 提交于
      Pull ext4 regression fixes from Ted Ts'o:
       "Bug fixes, including two regressions introduced in v3.8.  The most
        serious of these regressions is a buffer cache leak."
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
        ext4: remove duplicate call to ext4_bread() in ext4_init_new_dir()
        ext4: release buffer in failed path in dx_probe()
        ext4: fix configuration dependencies for ext4 ACLs and security labels
      f7763720
    • L
      Merge tag 'nfs-for-3.8-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 4c9014f2
      Linus Torvalds 提交于
      Pull NFS client bugfixes from Trond Myklebust:
      
       - Fix a permissions problem when opening NFSv4 files that only have the
         exec bit set.
      
       - Fix a couple of typos in pNFS (inverted logic), and the mount parsing
         (missing pointer dereference).
      
       - Work around a series of deadlock issues due to workqueues using
         struct work_struct pointer address comparisons in the re-entrancy
         tests.  Ensure that we don't free struct work_struct prematurely if
         our work function involves waiting for completion of other work items
         (e.g. by calling rpc_shutdown_client).
      
       - Revert the part of commit 168e4b39 that is causing unnecessary
         warnings to be issued in the nfsd callback code.
      
      * tag 'nfs-for-3.8-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        nfs: avoid dereferencing null pointer in initiate_bulk_draining
        SUNRPC: Partial revert of commit 168e4b39
        NFS: Ensure that we free the rpc_task after read and write cleanups are done
        SUNRPC: Ensure that we free the rpc_task after cleanups are done
        nfs: fix null checking in nfs_get_option_str()
        pnfs: Increase the refcount when LAYOUTGET fails the first time
        NFS: Fix access to suid/sgid executables
      4c9014f2
    • D
      ALSA: hda - add mute LED for HP Pavilion 17 (Realtek codec) · 6d3cd5d4
      David Henningsson 提交于
      The mute LED is in this case connected to the Mic1 VREF.
      
      The machine also exposes the following string in BIOS:
      "HP_Mute_LED_0_A", so if more machines are coming, it probably
      makes sense to try to do something more generic, like for the
      IDT codec.
      
      Cc: stable@vger.kernel.org
      BugLink: https://bugs.launchpad.net/bugs/1096789Signed-off-by: NDavid Henningsson <david.henningsson@canonical.com>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      6d3cd5d4
  5. 07 1月, 2013 11 次提交
    • L
      Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus · 5ce2955e
      Linus Torvalds 提交于
      Pull MIPS fixes from Ralf Baechle:
       "Various fixes across the tree.  The modpost error due to
        virt_addr_valid() not being usable from modules required a number of
        preparatory cleanups so a clean fix was possible."
      
      * 'upstream' of git://git.linux-mips.org/pub/scm/ralf/upstream-linus:
        MIPS: 64-bit: Fix build if !CONFIG_MODULES
        MIPS: Wire up finit_module syscall.
        MIPS: Fix modpost error in modules attepting to use virt_addr_valid().
        MIPS: page.h: Remove now unnecessary #ifndef __ASSEMBLY__ wrapper.
        MIPS: Switch remaining assembler PAGE_SIZE users to <asm/asm-offsets.h>.
        MIPS: Include PAGE_S{IZE,HIFT} in <asm/offset.h>.
        MIPS: Don't include <asm/page.h> unnecessarily.
        MIPS: Fix comment.
        Revert "MIPS: Optimise TLB handlers for MIPS32/64 R2 cores."
        MIPS: perf: Fix build failure in XLP perf support.
        MIPS: Alchemy: Make 32kHz and r4k timer coexist peacefully
      5ce2955e
    • L
      Merge branch 'akpm' (fixes from Andrew) · d0631c6e
      Linus Torvalds 提交于
      Merge emailed fixes from Andrew Morton:
       "Bunch of fixes:
      
         - delayed IPC updates.  I held back on this because of some possible
           outstanding bug reports, but they appear to have been addressed in
           later versions
      
         - A bunch of MAINTAINERS updates
      
         - Yet Another RTC driver.  I'd held this back while a couple of
           little issues were being worked out.
      
        I'm expecting an intrusive-but-simple patchset from Joe Perches which
        splits up printk.c into kernel/printk/*.  That will be a pig to
        maintain for two months so if it passes testing I'd like to get it
        upstream after a week or so."
      
      * emailed patches from Andrew Morton <akpm@linux-foundation.org>: (35 commits)
        printk: fix incorrect length from print_time() when seconds > 99999
        drivers/rtc/rtc-vt8500.c: fix handling of data passed in struct rtc_time
        drivers/rtc/rtc-vt8500.c: correct handling of CR_24H bitfield
        rtc: add RTC driver for TPS6586x
        MAINTAINERS: fix drivers/staging/sm7xx/
        MAINTAINERS: remove include/linux/of_pwm.h
        MAINTAINERS: remove arch/*/lib/perf_event*.c
        MAINTAINERS: remove drivers/mmc/host/imxmmc.*
        MAINTAINERS: fix Documentation/mei/
        MAINTAINERS: remove arch/x86/platform/mrst/pmu.*
        MAINTAINERS: remove firmware/isci/
        MAINTAINERS: fix drivers/ieee802154/
        MAINTAINERS: fix .../plat-mxc/include/mach/imxfb.h
        MAINTAINERS: remove drivers/video/epson1355fb.c
        MAINTAINERS: fix drivers/media/usb/dvb-usb/cxusb*
        MAINTAINERS: adjust for UAPI
        MAINTAINERS: fix drivers/media/platform/atmel-isi.c
        MAINTAINERS: fix arch/arm/mach-at91/include/mach/at_hdmac.h
        MAINTAINERS: fix drivers/rtc/rtc-vt8500.c
        MAINTAINERS: remove arch/arm/plat-s5p/
        ...
      d0631c6e
    • L
      Merge branch 'next' of git://git.monstr.eu/linux-2.6-microblaze · de9ac5ce
      Linus Torvalds 提交于
      Pull microblaze update from Michal Simek:
       "This fixes noMMU kernel and I have also added defconfig updates which
        fix issue with one external dependency and enable all xilinx device
        drivers for 0-day testing system.
      
        Additionally wire up finit_module system call, and do highmem fixup
        and pci warnings reported by the 0-day testing system"
      
      * 'next' of git://git.monstr.eu/linux-2.6-microblaze:
        microblaze: Update microblaze defconfigs
        microblaze: Fix pci compilation and sparse warnings
        microblaze: Add finit_module syscall
        microblaze: Kill __kmap_atomic()
        microblaze: Change section flags for noMMU
        microblaze: Microblaze wants sys_fork for noMMU too
      de9ac5ce
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · 7991b03d
      Linus Torvalds 提交于
      Pull integrity subsystem regression fix from James Morris:
       "Commit fdf90729 "ima: support new kernel module syscall" by error
        modified init_module() to return INTEGRITY_UNKNOWN (which is 4) to
        user space if the kernel was built with CONFIG_IMA_APPRAISE=y.
      
        As a result, user space can no longer load kernel modules using
        init_module().  This commit fixes this regression."
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        ima: fallback to MODULE_SIG_ENFORCE for existing kernel module syscall
      7991b03d
    • N
      ALSA: au88x0: fix incorrect left shift · 61ed1dca
      Nickolai Zeldovich 提交于
      vortex_wt_setdsout performs bit-negation on the bit position (wt&0x1f)
      rather than on the resulting bitmask.  This code is never actually
      invoked (vortex_wt_setdsout is always called with en=1), so this does
      not currently cause any problem, and this patch is simply cleanup.
      Signed-off-by: NNickolai Zeldovich <nickolai@csail.mit.edu>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      61ed1dca
    • X
      ipv4: fix NULL checking in devinet_ioctl() · c7e2e1d7
      Xi Wang 提交于
      The NULL pointer check `!ifa' should come before its first use.
      
      [ Bug origin : commit fd23c3b3
        (ipv4: Add hash table of interface addresses) in linux-2.6.39 ]
      Signed-off-by: NXi Wang <xi.wang@gmail.com>
      Acked-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      c7e2e1d7
    • E
      tcp: fix MSG_SENDPAGE_NOTLAST logic · ae62ca7b
      Eric Dumazet 提交于
      commit 35f9c09f (tcp: tcp_sendpages() should call tcp_push() once)
      added an internal flag : MSG_SENDPAGE_NOTLAST meant to be set on all
      frags but the last one for a splice() call.
      
      The condition used to set the flag in pipe_to_sendpage() relied on
      splice() user passing the exact number of bytes present in the pipe,
      or a smaller one.
      
      But some programs pass an arbitrary high value, and the test fails.
      
      The effect of this bug is a lack of tcp_push() at the end of a
      splice(pipe -> socket) call, and possibly very slow or erratic TCP
      sessions.
      
      We should both test sd->total_len and fact that another fragment
      is in the pipe (pipe->nrbufs > 1)
      
      Many thanks to Willy for providing very clear bug report, bisection
      and test programs.
      Reported-by: NWilly Tarreau <w@1wt.eu>
      Bisected-by: NWilly Tarreau <w@1wt.eu>
      Tested-by: NWilly Tarreau <w@1wt.eu>
      Signed-off-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ae62ca7b
    • G
      ext4: remove duplicate call to ext4_bread() in ext4_init_new_dir() · fef0ebdb
      Guo Chao 提交于
      This fixes a buffer cache leak when creating a directory, introduced
      in commit a774f9c2.
      Signed-off-by: NGuo Chao <yan@linux.vnet.ibm.com>
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      Reviewed-by: NTao Ma <boyu.mt@taobao.com>
      fef0ebdb
    • G
      ext4: release buffer in failed path in dx_probe() · 0ecaef06
      Guo Chao 提交于
      If checksum fails, we should also release the buffer
      read from previous iteration.
      Signed-off-by: NGuo Chao <yan@linux.vnet.ibm.com>
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>-
      Cc: stable@vger.kernel.org
      --
       fs/ext4/namei.c |    2 +-
       1 file changed, 1 insertion(+), 1 deletion(-)
      0ecaef06
    • V
      ext4: fix configuration dependencies for ext4 ACLs and security labels · 96465efe
      Valerie Aurora 提交于
      Commit "ext4: Remove CONFIG_EXT4_FS_XATTR" removed the configuration
      dependencies for ext4 xattrs from the ext4 ACLs and security labels
      configuration options, but did not replace them with a dependency on
      ext4 itself.  Add back the dependency on ext4 so the options only show
      up if ext4 is enabled.
      Signed-off-by: NValerie Aurora <val@vaaconsulting.com>
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      Reviewed-by: NTao Ma <boyu.mt@taobao.com>
      96465efe
    • J
      Merge branch 'for-Linus' of... · ade24c93
      James Morris 提交于
      Merge branch 'for-Linus' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity into for-linus
      
      Pulled from Mimi's tree.
      ade24c93
  6. 06 1月, 2013 7 次提交
  7. 05 1月, 2013 1 次提交
    • R
      printk: fix incorrect length from print_time() when seconds > 99999 · 35dac27c
      Roland Dreier 提交于
      print_prefix() passes a NULL buf to print_time() to get the length of
      the time prefix; when printk times are enabled, the current code just
      returns the constant 15, which matches the format "[%5lu.%06lu] " used
      to print the time value.  However, this is obviously incorrect when the
      whole seconds part of the time gets beyond 5 digits (100000 seconds is a
      bit more than a day of uptime).
      
      The simple fix is to use snprintf(NULL, 0, ...) to calculate the actual
      length of the time prefix.  This could be micro-optimized but it seems
      better to have simpler, more readable code here.
      
      The bug leads to the syslog system call miscomputing which messages fit
      into the userspace buffer.  If there are enough messages to fill
      log_buf_len and some have a timestamp >= 100000, dmesg may fail with:
      
          # dmesg
          klogctl: Bad address
      
      When this happens, strace shows that the failure is indeed EFAULT due to
      the kernel mistakenly accessing past the end of dmesg's buffer, since
      dmesg asks the kernel how big a buffer it needs, allocates a bit more,
      and then gets an error when it asks the kernel to fill it:
      
          syslog(0xa, 0, 0)                       = 1048576
          mmap(NULL, 1052672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa4d25d2000
          syslog(0x3, 0x7fa4d25d2010, 0x100008)   = -1 EFAULT (Bad address)
      
      As far as I can see, the bug has been there as long as print_time(),
      which comes from commit 084681d1 ("printk: flush continuation lines
      immediately to console") in 3.5-rc5.
      Signed-off-by: NRoland Dreier <roland@purestorage.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Joe Perches <joe@perches.com>
      Cc: Sylvain Munaut <s.munaut@whatever-company.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      35dac27c