1. 29 3月, 2013 3 次提交
  2. 28 3月, 2013 8 次提交
    • L
      Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sfr/next-fixes · 90641712
      Linus Torvalds 提交于
      Pull powerpc build fixes from Stephen Rothwell:
       "Just a couple of build fixes for powerpc all{mod,yes}config.
      
        Submitted by me since BenH is on vacation."
      
      * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sfr/next-fixes:
        powerpc: define the conditions where the ePAPR idle hcall can be supported
        powerpc: make additional room in exception vector area
      90641712
    • L
      Merge tag 'stable/for-linus-3.9-rc4-tag' of... · 33b65f1e
      Linus Torvalds 提交于
      Merge tag 'stable/for-linus-3.9-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen
      
      Pull Xen bug-fixes from Konrad Rzeszutek Wilk:
       "This is mostly just the last stragglers of the regression bugs that
        this merge window had.  There are also two bug-fixes: one that adds an
        extra layer of security, and a regression fix for a change that was
        added in v3.7 (the v1 was faulty, the v2 works).
      
         - Regression fixes for C-and-P states not being parsed properly.
         - Fix possible security issue with guests triggering DoS via
           non-assigned MSI-Xs.
         - Fix regression (introduced in v3.7) with raising an event (v2).
         - Fix hastily introduced band-aid during c0 for the CR3 blowup."
      
      * tag 'stable/for-linus-3.9-rc4-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
        xen/events: avoid race with raising an event in unmask_evtchn()
        xen/mmu: Move the setting of pvops.write_cr3 to later phase in bootup.
        xen/acpi-stub: Disable it b/c the acpi_processor_add is no longer called.
        xen-pciback: notify hypervisor about devices intended to be assigned to guests
        xen/acpi-processor: Don't dereference struct acpi_processor on all CPUs.
      33b65f1e
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · f8966048
      Linus Torvalds 提交于
      Pull HID fixes from Jiri Kosina:
      
       - fix for potential 3.9 regression in handling of buttons for touchpads
         following HID mt specification; potential because reportedly there is
         no retail product on the market that would be using this feature, but
         nevertheless we'd better follow the spec.  Fix by Benjamin Tissoires.
      
       - support for two quirky devices added by Josh Boyer.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
        HID: multitouch: fix touchpad buttons
        HID: usbhid: fix build problem
        HID: usbhid: quirk for MSI GX680R led panel
        HID: usbhid: quirk for Realtek Multi-card reader
      f8966048
    • L
      Merge tag 'iommu-fixes-v3.9-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · a8c45289
      Linus Torvalds 提交于
      Pull IOMMU fixes from Joerg Roedel:
       "Here are some fixes which have collected since Linux v3.9-rc1.
      
        The most important one fixes a long-standing regressen which make
        re-hotplugged devices unusable when AMD IOMMU is used.
      
        The other patches fix build issues (build regression on OMAP and a
        section mismatch).  One patch just removes a duplicate header include."
      
      * tag 'iommu-fixes-v3.9-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
        iommu/amd: Make sure dma_ops are set for hotplug devices
        x86, io_apic: remove duplicated include from irq_remapping.c
        iommu: OMAP: build only on OMAP2+
        amd_iommu_init: remove __init from amd_iommu_erratum_746_workaround
      a8c45289
    • A
      vfs/splice: Fix missed checks in new __kernel_write() helper · 3e84f48e
      Al Viro 提交于
      Commit 06ae43f3 ("Don't bother with redoing rw_verify_area() from
      default_file_splice_from()") lost the checks to test existence of the
      write/aio_write methods.  My apologies ;-/
      
      Eventually, we want that in fs/splice.c side of things (no point
      repeating it for every buffer, after all), but for now this is the
      obvious minimal fix.
      Reported-by: NDave Jones <davej@redhat.com>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      3e84f48e
    • D
      xen/events: avoid race with raising an event in unmask_evtchn() · c26377e6
      David Vrabel 提交于
      In unmask_evtchn(), when the mask bit is cleared after testing for
      pending and the event becomes pending between the test and clear, then
      the upcall will not become pending and the event may be lost or
      delayed.
      
      Avoid this by always clearing the mask bit before checking for
      pending.  If a hypercall is needed, remask the event as
      EVTCHNOP_unmask will only retrigger pending events if they were
      masked.
      
      This fixes a regression introduced in 3.7 by
      b5e57923 (xen/events: fix
      unmask_evtchn for PV on HVM guests) which reordered the clear mask and
      check pending operations.
      
      Changes in v2:
      - set mask before hypercall.
      
      Cc: stable@vger.kernel.org
      Acked-by: NStefano Stabellini <stefano.stabellini@eu.citrix.com>
      Signed-off-by: NDavid Vrabel <david.vrabel@citrix.com>
      Signed-off-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      c26377e6
    • K
      xen/mmu: Move the setting of pvops.write_cr3 to later phase in bootup. · d3eb2c89
      Konrad Rzeszutek Wilk 提交于
      We move the setting of write_cr3 from the early bootup variant
      (see git commit 0cc9129d
      "x86-64, xen, mmu: Provide an early version of write_cr3.")
      to a more appropiate location.
      
      This new location sets all of the other non-early variants
      of pvops calls - and most importantly is before the
      alternative_asm mechanism kicks in.
      Signed-off-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      d3eb2c89
    • K
      xen/acpi-stub: Disable it b/c the acpi_processor_add is no longer called. · 76fc2537
      Konrad Rzeszutek Wilk 提交于
      With the Xen ACPI stub code (CONFIG_XEN_STUB=y) enabled, the power
      C and P states are no longer uploaded to the hypervisor.
      
      The reason is that the Xen CPU hotplug code: xen-acpi-cpuhotplug.c
      and the xen-acpi-stub.c register themselves as the "processor" type object.
      
      That means the generic processor (processor_driver.c) stops
      working and it does not call (acpi_processor_add) which populates the
      
               per_cpu(processors, pr->id) = pr;
      
      structure. The 'pr' is gathered from the acpi_processor_get_info function
      which does the job of finding the C-states and figuring out PBLK address.
      
      The 'processors->pr' is then later used by xen-acpi-processor.c (the one that
      uploads C and P states to the hypervisor). Since it is NULL, we end
      skip the gathering of _PSD, _PSS, _PCT, etc and never upload the power
      management data.
      
      The end result is that enabling the CONFIG_XEN_STUB in the build means that
      xen-acpi-processor is not working anymore.
      
      This temporary patch fixes it by marking the XEN_STUB driver as
      BROKEN until this can be properly fixed.
      
      CC: jinsong.liu@intel.com
      Signed-off-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      76fc2537
  3. 27 3月, 2013 18 次提交
    • E
      userns: Restrict when proc and sysfs can be mounted · 87a8ebd6
      Eric W. Biederman 提交于
      Only allow unprivileged mounts of proc and sysfs if they are already
      mounted when the user namespace is created.
      
      proc and sysfs are interesting because they have content that is
      per namespace, and so fresh mounts are needed when new namespaces
      are created while at the same time proc and sysfs have content that
      is shared between every instance.
      
      Respect the policy of who may see the shared content of proc and sysfs
      by only allowing new mounts if there was an existing mount at the time
      the user namespace was created.
      
      In practice there are only two interesting cases: proc and sysfs are
      mounted at their usual places, proc and sysfs are not mounted at all
      (some form of mount namespace jail).
      
      Cc: stable@vger.kernel.org
      Acked-by: NSerge Hallyn <serge.hallyn@canonical.com>
      Signed-off-by: N"Eric W. Biederman" <ebiederm@xmission.com>
      87a8ebd6
    • E
      ipc: Restrict mounting the mqueue filesystem · a636b702
      Eric W. Biederman 提交于
      Only allow mounting the mqueue filesystem if the caller has CAP_SYS_ADMIN
      rights over the ipc namespace.   The principle here is if you create
      or have capabilities over it you can mount it, otherwise you get to live
      with what other people have mounted.
      
      This information is not particularly sensitive and mqueue essentially
      only reports which posix messages queues exist.  Still when creating a
      restricted environment for an application to live any extra
      information may be of use to someone with sufficient creativity.  The
      historical if imperfect way this information has been restricted has
      been not to allow mounts and restricting this to ipc namespace
      creators maintains the spirit of the historical restriction.
      
      Cc: stable@vger.kernel.org
      Acked-by: NSerge Hallyn <serge.hallyn@canonical.com>
      Signed-off-by: N"Eric W. Biederman" <ebiederm@xmission.com>
      a636b702
    • E
      vfs: Carefully propogate mounts across user namespaces · 132c94e3
      Eric W. Biederman 提交于
      As a matter of policy MNT_READONLY should not be changable if the
      original mounter had more privileges than creator of the mount
      namespace.
      
      Add the flag CL_UNPRIVILEGED to note when we are copying a mount from
      a mount namespace that requires more privileges to a mount namespace
      that requires fewer privileges.
      
      When the CL_UNPRIVILEGED flag is set cause clone_mnt to set MNT_NO_REMOUNT
      if any of the mnt flags that should never be changed are set.
      
      This protects both mount propagation and the initial creation of a less
      privileged mount namespace.
      
      Cc: stable@vger.kernel.org
      Acked-by: NSerge Hallyn <serge.hallyn@canonical.com>
      Reported-by: NAndy Lutomirski <luto@amacapital.net>
      Signed-off-by: N"Eric W. Biederman" <ebiederm@xmission.com>
      132c94e3
    • E
      vfs: Add a mount flag to lock read only bind mounts · 90563b19
      Eric W. Biederman 提交于
      When a read-only bind mount is copied from mount namespace in a higher
      privileged user namespace to a mount namespace in a lesser privileged
      user namespace, it should not be possible to remove the the read-only
      restriction.
      
      Add a MNT_LOCK_READONLY mount flag to indicate that a mount must
      remain read-only.
      
      CC: stable@vger.kernel.org
      Acked-by: NSerge Hallyn <serge.hallyn@canonical.com>
      Signed-off-by: N"Eric W. Biederman" <ebiederm@xmission.com>
      90563b19
    • E
      userns: Don't allow creation if the user is chrooted · 3151527e
      Eric W. Biederman 提交于
      Guarantee that the policy of which files may be access that is
      established by setting the root directory will not be violated
      by user namespaces by verifying that the root directory points
      to the root of the mount namespace at the time of user namespace
      creation.
      
      Changing the root is a privileged operation, and as a matter of policy
      it serves to limit unprivileged processes to files below the current
      root directory.
      
      For reasons of simplicity and comprehensibility the privilege to
      change the root directory is gated solely on the CAP_SYS_CHROOT
      capability in the user namespace.  Therefore when creating a user
      namespace we must ensure that the policy of which files may be access
      can not be violated by changing the root directory.
      
      Anyone who runs a processes in a chroot and would like to use user
      namespace can setup the same view of filesystems with a mount
      namespace instead.  With this result that this is not a practical
      limitation for using user namespaces.
      
      Cc: stable@vger.kernel.org
      Acked-by: NSerge Hallyn <serge.hallyn@canonical.com>
      Reported-by: NAndy Lutomirski <luto@amacapital.net>
      Signed-off-by: N"Eric W. Biederman" <ebiederm@xmission.com>
      3151527e
    • B
      HID: multitouch: fix touchpad buttons · 4c437555
      Benjamin Tissoires 提交于
      Commit "HID: multitouch: use the callback "report" instead..." breaks the
      buttons of touchpads following the HID multitouch specification.
      The buttons were emmitted through hid-input, but as now the events
      are generated only in hid-multitouch, the buttons are not emmitted anymore.
      
      The input_event() call is far much simpler than the hid-input one as
      many of the different tests do not apply to multitouch touchpads.
      Signed-off-by: NBenjamin Tissoires <benjamin.tissoires@redhat.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      4c437555
    • J
      iommu/amd: Make sure dma_ops are set for hotplug devices · c2a2876e
      Joerg Roedel 提交于
      There is a bug introduced with commit 27c2127a that causes
      devices which are hot unplugged and then hot-replugged to
      not have per-device dma_ops set. This causes these devices
      to not function correctly. Fixed with this patch.
      
      Cc: stable@vger.kernel.org
      Reported-by: NAndreas Degert <andreas.degert@googlemail.com>
      Signed-off-by: NJoerg Roedel <joro@8bytes.org>
      c2a2876e
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · de55eb1d
      Linus Torvalds 提交于
      Pull vfs fixes from Al Viro:
       "stable fodder; assorted deadlock fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        vt: synchronize_rcu() under spinlock is not nice...
        Nest rename_lock inside vfsmount_lock
        Don't bother with redoing rw_verify_area() from default_file_splice_from()
      de55eb1d
    • A
      vt: synchronize_rcu() under spinlock is not nice... · e8cd8169
      Al Viro 提交于
      vcs_poll_data_free() calls unregister_vt_notifier(), which calls
      atomic_notifier_chain_unregister(), which calls synchronize_rcu().
      Do it *after* we'd dropped ->f_lock.
      
      Cc: stable@vger.kernel.org (all kernels since 2.6.37)
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      e8cd8169
    • A
      Nest rename_lock inside vfsmount_lock · 7ea600b5
      Al Viro 提交于
      ... lest we get livelocks between path_is_under() and d_path() and friends.
      
      The thing is, wrt fairness lglocks are more similar to rwsems than to rwlocks;
      it is possible to have thread B spin on attempt to take lock shared while thread
      A is already holding it shared, if B is on lower-numbered CPU than A and there's
      a thread C spinning on attempt to take the same lock exclusive.
      
      As the result, we need consistent ordering between vfsmount_lock (lglock) and
      rename_lock (seq_lock), even though everything that takes both is going to take
      vfsmount_lock only shared.
      Spotted-by: NBrad Spengler <spender@grsecurity.net>
      Cc: stable@vger.kernel.org
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      7ea600b5
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · b175293c
      Linus Torvalds 提交于
      Pull networking fixes from David Miller:
      
       1) Always increment IPV4 ID field in encapsulated GSO packets, even
          when DF is set.  Regression fix from Pravin B Shelar.
      
       2) Fix per-net subsystem initialization in netfilter conntrack,
          otherwise we may access dynamically allocated memory before it is
          actually allocated.  From Gao Feng.
      
       3) Fix DMA buffer lengths in iwl3945 driver, from Stanislaw Gruszka.
      
       4) Fix race between submission of sync vs async commands in mwifiex
          driver, from Amitkumar Karwar.
      
       5) Add missing cancel of command timer in mwifiex driver, from Bing
          Zhao.
      
       6) Missing SKB free in rtlwifi USB driver, from Jussi Kivilinna.
      
       7) Thermal layer tries to use a genetlink multicast string that is
          longer than the 16 character limit.  Fix it and add a BUG check to
          prevent this kind of thing from happening in the future.
      
       From Masatake YAMATO.
      
       8) Fix many bugs in the handling of the teardown of L2TP connections,
          UDP encapsulation instances, and sockets.  From Tom Parkin.
      
       9) Missing socket release in IRDA, from Kees Cook.
      
      10) Fix fec driver modular build, from Fabio Estevam.
      
      11) Erroneous use of kfree() instead of free_netdev() in lantiq_etop,
          from Wei Yongjun.
      
      12) Fix bugs in handling of queue numbers and steering rules in mlx4
          driver, from Moshe Lazer, Hadar Hen Zion, and Or Gerlitz.
      
      13) Some FOO_DIAG_MAX constants were defined off by one, fix from Andrey
          Vagin.
      
      14) TCP segmentation deferral is unintentionally done too strongly,
          breaking ACK clocking.  Fix from Eric Dumazet.
      
      15) net_enable_timestamp() can legitimately be invoked from software
          interrupts, and in a way that is safe, so remove the WARN_ON().
          Also from Eric Dumazet.
      
      16) Fix use after free in VLANs, from Cong Wang.
      
      17) Fix TCP slow start retransmit storms after SACK reneging, from
          Yuchung Cheng.
      
      18) Unix socket release should mark a socket dead before NULL'ing out
          sock->sk, otherwise we can race.  Fix from Paul Moore.
      
      19) IPV6 addrconf code can try to free static memory, from Hong Zhiguo.
      
      20) Fix register mis-programming, NULL pointer derefs, and wrong PHC
          clock frequency in IGB driver.  From Lior LevyAlex Williamson, Jiri
          Benc, and Jeff Kirsher.
      
      21) skb->ip_summed logic in pch_gbe driver is reversed, breaking packet
          forwarding.  Fix from Veaceslav Falico.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (65 commits)
        ipv4: Fix ip-header identification for gso packets.
        bonding: remove already created master sysfs link on failure
        af_unix: dont send SCM_CREDENTIAL when dest socket is NULL
        pch_gbe: fix ip_summed checksum reporting on rx
        igb: fix PHC stopping on max freq
        igb: make sensor info static
        igb: SR-IOV init reordering
        igb: Fix null pointer dereference
        igb: fix i350 anti spoofing config
        ixgbevf: don't release the soft entries
        ipv6: fix bad free of addrconf_init_net
        unix: fix a race condition in unix_release()
        tcp: undo spurious timeout after SACK reneging
        bnx2x: fix assignment of signed expression to unsigned variable
        bridge: fix crash when set mac address of br interface
        8021q: fix a potential use-after-free
        net: remove a WARN_ON() in net_enable_timestamp()
        tcp: preserve ACK clocking in TSO
        net: fix *_DIAG_MAX constants
        net/mlx4_core: Disallow releasing VF QPs which have steering rules
        ...
      b175293c
    • L
      Merge tag 'nfs-for-3.9-3' of git://git.linux-nfs.org/projects/trondmy/linux-nfs · 5d538483
      Linus Torvalds 提交于
      Pull NFS client bugfixes from Trond Myklebust:
       - Fix an NFSv4 idmapper regression
       - Fix an Oops in the pNFS blocks client
       - Fix up various issues with pNFS layoutcommit
       - Ensure correct read ordering of variables in
         rpc_wake_up_task_queue_locked
      
      * tag 'nfs-for-3.9-3' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
        SUNRPC: Add barriers to ensure read ordering in rpc_wake_up_task_queue_locked
        NFSv4.1: Add a helper pnfs_commit_and_return_layout
        NFSv4.1: Always clear the NFS_INO_LAYOUTCOMMIT in layoutreturn
        NFSv4.1: Fix a race in pNFS layoutcommit
        pnfs-block: removing DM device maybe cause oops when call dev_remove
        NFSv4: Fix the string length returned by the idmapper
      5d538483
    • E
      yama: Better permission check for ptraceme · eddc0a3a
      Eric W. Biederman 提交于
      Change the permission check for yama_ptrace_ptracee to the standard
      ptrace permission check, testing if the traceer has CAP_SYS_PTRACE
      in the tracees user namespace.
      Reviewed-by: NKees Cook <keescook@chromium.org>
      Signed-off-by: N"Eric W. Biederman" <ebiederm@xmission.com>
      eddc0a3a
    • P
      ipv4: Fix ip-header identification for gso packets. · 330305cc
      Pravin B Shelar 提交于
      ip-header id needs to be incremented even if IP_DF flag is set.
      This behaviour was changed in commit 490ab081
      (IP_GRE: Fix IP-Identification).
      
      Following patch fixes it so that identification is always
      incremented.
      Reported-by: NCong Wang <amwang@redhat.com>
      Signed-off-by: NPravin B Shelar <pshelar@nicira.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      330305cc
    • V
      bonding: remove already created master sysfs link on failure · 9fe16b78
      Veaceslav Falico 提交于
      If slave sysfs symlink failes to be created - we end up without removing
      the master sysfs symlink. Remove it in case of failure.
      Signed-off-by: NVeaceslav Falico <vfalico@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9fe16b78
    • D
      af_unix: dont send SCM_CREDENTIAL when dest socket is NULL · 14134f65
      dingtianhong 提交于
      SCM_SCREDENTIALS should apply to write() syscalls only either source or destination
      socket asserted SOCK_PASSCRED. The original implememtation in maybe_add_creds is wrong,
      and breaks several LSB testcases ( i.e. /tset/LSB.os/netowkr/recvfrom/T.recvfrom).
      Origionally-authored-by: NKarel Srot <ksrot@redhat.com>
      Signed-off-by: NDing Tianhong <dingtianhong@huawei.com>
      Acked-by: NEric Dumazet <edumazet@google.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      14134f65
    • D
      Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/net · 465c0a16
      David S. Miller 提交于
      Jeff Kirsher says:
      
      ====================
      This series contains updates to ixgbevf and igb.
      
      The ixgbevf calls to pci_disable_msix() and to free the msix_entries
      memory should not occur if device open fails.  Instead they should be
      called during device driver removal to balance with the call to
      pci_enable_msix() and the call to allocate msix_entries memory
      during the device probe and driver load.
      
      The remaining 4 of 5 igb patches are simple 1-3 line patches to fix
      several issues such as possible null pointer dereference, PHC stopping
      on max frequency, make sensor info static and SR-IOV initialization
      reordering.
      
      The remaining igb patch to fix anti-spoofing config fixes a problem
      in i350 where anti spoofing configuration was written into a wrong
      register.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      465c0a16
    • V
      pch_gbe: fix ip_summed checksum reporting on rx · 76a0e681
      Veaceslav Falico 提交于
      skb->ip_summed should be CHECKSUM_UNNECESSARY when the driver reports that
      checksums were correct and CHECKSUM_NONE in any other case. They're
      currently placed vice versa, which breaks the forwarding scenario. Fix it
      by placing them as described above.
      Signed-off-by: NVeaceslav Falico <vfalico@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      76a0e681
  4. 26 3月, 2013 11 次提交