1. 01 11月, 2011 17 次提交
  2. 31 10月, 2011 7 次提交
    • D
      2e8ecdc0
    • N
      md/raid10: Fix bug when activating a hot-spare. · 7fcc7c8a
      NeilBrown 提交于
      This is a fairly serious bug in RAID10.
      
      When a RAID10 array is degraded and a hot-spare is activated, the
      spare does not take up the empty slot, but rather replaces the first
      working device.
      This is likely to make the array non-functional.   It would normally
      be possible to recover the data, but that would need care and is not
      guaranteed.
      
      This bug was introduced in commit
         2bb77736
      which first appeared in 3.1.
      
      Cc: stable@kernel.org
      Signed-off-by: NNeilBrown <neilb@suse.de>
      7fcc7c8a
    • L
      Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · 839d8810
      Linus Torvalds 提交于
      * 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        i2c: Functions for byte-swapped smbus_write/read_word_data
        i2c-algo-pca: Return standard fault codes
        i2c-algo-bit: Return standard fault codes
        i2c-algo-bit: Be verbose on bus testing failure
        i2c-algo-bit: Let user test buses without failing
        i2c/scx200_acb: Fix section mismatch warning in scx200_pci_drv
        i2c: I2C_ELEKTOR should depend on HAS_IOPORT
      839d8810
    • L
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu · 0cfdc724
      Linus Torvalds 提交于
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu: (33 commits)
        iommu/core: Remove global iommu_ops and register_iommu
        iommu/msm: Use bus_set_iommu instead of register_iommu
        iommu/omap: Use bus_set_iommu instead of register_iommu
        iommu/vt-d: Use bus_set_iommu instead of register_iommu
        iommu/amd: Use bus_set_iommu instead of register_iommu
        iommu/core: Use bus->iommu_ops in the iommu-api
        iommu/core: Convert iommu_found to iommu_present
        iommu/core: Add bus_type parameter to iommu_domain_alloc
        Driver core: Add iommu_ops to bus_type
        iommu/core: Define iommu_ops and register_iommu only with CONFIG_IOMMU_API
        iommu/amd: Fix wrong shift direction
        iommu/omap: always provide iommu debug code
        iommu/core: let drivers know if an iommu fault handler isn't installed
        iommu/core: export iommu_set_fault_handler()
        iommu/omap: Fix build error with !IOMMU_SUPPORT
        iommu/omap: Migrate to the generic fault report mechanism
        iommu/core: Add fault reporting mechanism
        iommu/core: Use PAGE_SIZE instead of hard-coded value
        iommu/core: use the existing IS_ALIGNED macro
        iommu/msm: ->unmap() should return order of unmapped page
        ...
      
      Fixup trivial conflicts in drivers/iommu/Makefile: "move omap iommu to
      dedicated iommu folder" vs "Rename the DMAR and INTR_REMAP config
      options" just happened to touch lines next to each other.
      0cfdc724
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · b48aeab6
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        amd64_edac: Cleanup return type of amd64_determine_edac_cap()
        amd64_edac: Add a fix for Erratum 505
        EDAC, MCE, AMD: Simplify NB MCE decoder interface
        EDAC, MCE, AMD: Drop local coreid reporting
        EDAC, MCE, AMD: Print valid addr when reporting an error
        EDAC, MCE, AMD: Print CPU number when reporting the error
      b48aeab6
    • L
      Merge branch 'kvm-updates/3.2' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm · 1bc87b00
      Linus Torvalds 提交于
      * 'kvm-updates/3.2' of git://git.kernel.org/pub/scm/linux/kernel/git/avi/kvm: (75 commits)
        KVM: SVM: Keep intercepting task switching with NPT enabled
        KVM: s390: implement sigp external call
        KVM: s390: fix register setting
        KVM: s390: fix return value of kvm_arch_init_vm
        KVM: s390: check cpu_id prior to using it
        KVM: emulate lapic tsc deadline timer for guest
        x86: TSC deadline definitions
        KVM: Fix simultaneous NMIs
        KVM: x86 emulator: convert push %sreg/pop %sreg to direct decode
        KVM: x86 emulator: switch lds/les/lss/lfs/lgs to direct decode
        KVM: x86 emulator: streamline decode of segment registers
        KVM: x86 emulator: simplify OpMem64 decode
        KVM: x86 emulator: switch src decode to decode_operand()
        KVM: x86 emulator: qualify OpReg inhibit_byte_regs hack
        KVM: x86 emulator: switch OpImmUByte decode to decode_imm()
        KVM: x86 emulator: free up some flag bits near src, dst
        KVM: x86 emulator: switch src2 to generic decode_operand()
        KVM: x86 emulator: expand decode flags to 64 bits
        KVM: x86 emulator: split dst decode to a generic decode_operand()
        KVM: x86 emulator: move memop, memopp into emulation context
        ...
      1bc87b00
    • L
      Merge branch 'fbdev-next' of git://github.com/schandinat/linux-2.6 · acff987d
      Linus Torvalds 提交于
      * 'fbdev-next' of git://github.com/schandinat/linux-2.6: (270 commits)
        video: platinumfb: Add __devexit_p at necessary place
        drivers/video: fsl-diu-fb: merge diu_pool into fsl_diu_data
        drivers/video: fsl-diu-fb: merge diu_hw into fsl_diu_data
        drivers/video: fsl-diu-fb: only DIU modes 0 and 1 are supported
        drivers/video: fsl-diu-fb: remove unused panel operating mode support
        drivers/video: fsl-diu-fb: use an enum for the AOI index
        drivers/video: fsl-diu-fb: add several new video modes
        drivers/video: fsl-diu-fb: remove broken screen blanking support
        drivers/video: fsl-diu-fb: move some definitions out of the header file
        drivers/video: fsl-diu-fb: fix some ioctls
        video: da8xx-fb: Increased resolution configuration of revised LCDC IP
        OMAPDSS: picodlp: add missing #include <linux/module.h>
        fb: fix au1100fb bitrot.
        mx3fb: fix NULL pointer dereference in screen blanking.
        video: irq: Remove IRQF_DISABLED
        smscufx: change edid data to u8 instead of char
        OMAPDSS: DISPC: zorder support for DSS overlays
        OMAPDSS: DISPC: VIDEO3 pipeline support
        OMAPDSS/OMAP_VOUT: Fix incorrect OMAP3-alpha compatibility setting
        video/omap: fix build dependencies
        ...
      
      Fix up conflicts in:
       - drivers/staging/xgifb/XGI_main_26.c
      	Changes to XGIfb_pan_var()
       - drivers/video/omap/{lcd_apollon.c,lcd_ldp.c,lcd_overo.c}
      	Removed (or in the case of apollon.c, merged into the generic
      	DSS panel in drivers/video/omap2/displays/panel-generic-dpi.c)
      acff987d
  3. 30 10月, 2011 16 次提交
    • J
      i2c: Functions for byte-swapped smbus_write/read_word_data · 06a67848
      Jonathan Cameron 提交于
      Reimplemented at least 17 times discounting error mangling cases
      where it could be used.
      Signed-off-by: NJonathan Cameron <jic23@cam.ac.uk>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      06a67848
    • J
      i2c-algo-pca: Return standard fault codes · 4403988a
      Jean Delvare 提交于
      Adjust i2c-algo-pca to return fault codes compliant with
      Documentation/i2c/fault-codes, rather than the undocumented and
      vague -EREMOTEIO.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      Cc: Wolfram Sang <w.sang@pengutronix.de>
      4403988a
    • J
      i2c-algo-bit: Return standard fault codes · abc01b27
      Jean Delvare 提交于
      Adjust i2c-algo-bit to return fault codes compliant with
      Documentation/i2c/fault-codes, rather than the undocumented and
      vague -EREMOTEIO.
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      abc01b27
    • J
      i2c-algo-bit: Be verbose on bus testing failure · f6beb67d
      Jean Delvare 提交于
      If bus testing fails due to the bus being seen as busy, it might be
      helpful for developers to know which line is unexpectedly low.
      Signed-off-by: NJean Delvare <jdelvare@suse.de>
      Reviewed-by: NAlex Deucher <alexdeucher@gmail.com>
      f6beb67d
    • J
      i2c-algo-bit: Let user test buses without failing · 1bddab7f
      Jean Delvare 提交于
      Always failing to register I2C buses when the line testing fails is a
      little harsh. While such a failure is definitely a bug in the driver
      that exposes the affected I2C bus, things may still work fine if the
      missing initialization steps are done later, before the I2C bus is
      used. So it seems a better debugging tool to just report the test
      failure by default. I introduce bit_test=2 if anyone really misses the
      original behavior of bit_test=1.
      Signed-off-by: NJean Delvare <jdelvare@suse.de>
      Reviewed-by: NAlex Deucher <alexdeucher@gmail.com>
      1bddab7f
    • H
      i2c/scx200_acb: Fix section mismatch warning in scx200_pci_drv · 6fcf84a2
      Harvey Yang 提交于
      WARNING: drivers/i2c/busses/built-in.o(.data+0x47c8): Section mismatch in reference from the variable scx200_pci_drv to the function .devinit.text:scx200_probe()
      The variable scx200_pci_drv references
      the function __devinit scx200_probe()
      If the reference is valid then annotate the
      variable with __init* or __refdata (see linux/init.h) or name the variable:
      *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console
      Signed-off-by: NHarvey Yang <harvey.huawei.yang@gmail.com>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      6fcf84a2
    • G
      i2c: I2C_ELEKTOR should depend on HAS_IOPORT · 9519282a
      Geert Uytterhoeven 提交于
      On m68k, I get:
      
      drivers/i2c/busses/i2c-elektor.c: In function ‘pcf_isa_init’:
      drivers/i2c/busses/i2c-elektor.c:153: error: implicit declaration of function ‘ioport_map’
      drivers/i2c/busses/i2c-elektor.c:153: warning: assignment makes pointer from integer without a cast
      drivers/i2c/busses/i2c-elektor.c: In function ‘elektor_probe’:
      drivers/i2c/busses/i2c-elektor.c:287: error: implicit declaration of function ‘ioport_unmap’
      
      Since commit 82ed223c ("iomap: make IOPORT/PCI
      mapping functions conditional"), ioport_map() is only available on platforms
      that set HAS_IOPORT.
      Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org>
      Signed-off-by: NJean Delvare <khali@linux-fr.org>
      9519282a
    • J
      KVM: SVM: Keep intercepting task switching with NPT enabled · f1c1da2b
      Jan Kiszka 提交于
      AMD processors apparently have a bug in the hardware task switching
      support when NPT is enabled. If the task switch triggers a NPF, we can
      get wrong EXITINTINFO along with that fault. On resume, spurious
      exceptions may then be injected into the guest.
      
      We were able to reproduce this bug when our guest triggered #SS and the
      handler were supposed to run over a separate task with not yet touched
      stack pages.
      
      Work around the issue by continuing to emulate task switches even in
      NPT mode.
      Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com>
      Signed-off-by: NMarcelo Tosatti <mtosatti@redhat.com>
      f1c1da2b
    • C
      KVM: s390: implement sigp external call · 7697e71f
      Christian Ehrhardt 提交于
      Implement sigp external call, which might be required for guests that
      issue an external call instead of an emergency signal for IPI.
      
      This fixes an issue with "KVM: unknown SIGP: 0x02" when booting
      such an SMP guest.
      Signed-off-by: NChristian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: NMarcelo Tosatti <mtosatti@redhat.com>
      7697e71f
    • C
      KVM: s390: fix register setting · 7eef87dc
      Carsten Otte 提交于
      KVM common code does vcpu_load prior to calling our arch ioctls and
      vcpu_put after we're done here. Via the kvm_arch_vcpu_load/put
      callbacks we do load the fpu and access register state into the
      processor, which saves us moving the state on every SIE exit the
      kernel handles. However this breaks register setting from userspace,
      because of the following sequence:
      1a. vcpu load stores userspace register content
      1b. vcpu load loads guest register content
      2.  kvm_arch_vcpu_ioctl_set_fpu/sregs updates saved guest register content
      3a. vcpu put stores the guest registers and overwrites the new content
      3b. vcpu put loads the userspace register set again
      
      This patch loads the new guest register state into the cpu, so that the correct
      (new) set of guest registers will be stored in step 3a.
      Signed-off-by: NCarsten Otte <cotte@de.ibm.com>
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: NMarcelo Tosatti <mtosatti@redhat.com>
      7eef87dc
    • C
      KVM: s390: fix return value of kvm_arch_init_vm · b290411a
      Carsten Otte 提交于
      This patch fixes the return value of kvm_arch_init_vm in case a memory
      allocation goes wrong.
      Signed-off-by: NCarsten Otte <cotte@de.ibm.com>
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: NMarcelo Tosatti <mtosatti@redhat.com>
      b290411a
    • C
      KVM: s390: check cpu_id prior to using it · 4d47555a
      Carsten Otte 提交于
      We use the cpu id provided by userspace as array index here. Thus we
      clearly need to check it first. Ooops.
      
      CC: <stable@vger.kernel.org>
      Signed-off-by: NCarsten Otte <cotte@de.ibm.com>
      Signed-off-by: NChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: NMarcelo Tosatti <mtosatti@redhat.com>
      4d47555a
    • E
      vlan: allow nested vlan_do_receive() · 6a32e4f9
      Eric Dumazet 提交于
      commit 2425717b (net: allow vlan traffic to be received under bond)
      broke ARP processing on vlan on top of bonding.
      
             +-------+
      eth0 --| bond0 |---bond0.103
      eth1 --|       |
             +-------+
      
      52870.115435: skb_gro_reset_offset <-napi_gro_receive
      52870.115435: dev_gro_receive <-napi_gro_receive
      52870.115435: napi_skb_finish <-napi_gro_receive
      52870.115435: netif_receive_skb <-napi_skb_finish
      52870.115435: get_rps_cpu <-netif_receive_skb
      52870.115435: __netif_receive_skb <-netif_receive_skb
      52870.115436: vlan_do_receive <-__netif_receive_skb
      52870.115436: bond_handle_frame <-__netif_receive_skb
      52870.115436: vlan_do_receive <-__netif_receive_skb
      52870.115436: arp_rcv <-__netif_receive_skb
      52870.115436: kfree_skb <-arp_rcv
      
      Packet is dropped in arp_rcv() because its pkt_type was set to
      PACKET_OTHERHOST in the first vlan_do_receive() call, since no eth0.103
      exists.
      
      We really need to change pkt_type only if no more rx_handler is about to
      be called for the packet.
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Reviewed-by: NJiri Pirko <jpirko@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      6a32e4f9
    • A
      ipv6: fix route lookup in addrconf_prefix_rcv() · 14ef37b6
      Andreas Hofmeister 提交于
      The route lookup to find a previously auto-configured route for a prefixes used
      to use rt6_lookup(), with the prefix from the RA used as an address. However,
      that kind of lookup ignores routing tables, the prefix length and route flags,
      so when there were other matching routes, even in different tables and/or with
      a different prefix length, the wrong route would be manipulated.
      
      Now, a new function "addrconf_get_prefix_route()" is used for the route lookup,
      which searches in RT6_TABLE_PREFIX and takes the prefix-length and route flags
      into account.
      Signed-off-by: NAndreas Hofmeister <andi@collax.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      14ef37b6
    • J
      bonding: eliminate bond_close race conditions · e6d265e8
      Jay Vosburgh 提交于
      This patch resolves two sets of race conditions.
      
      	Mitsuo Hayasaka <mitsuo.hayasaka.hu@hitachi.com> reported the
      first, as follows:
      
      The bond_close() calls cancel_delayed_work() to cancel delayed works.
      It, however, cannot cancel works that were already queued in workqueue.
      The bond_open() initializes work->data, and proccess_one_work() refers
      get_work_cwq(work)->wq->flags. The get_work_cwq() returns NULL when
      work->data has been initialized. Thus, a panic occurs.
      
      	He included a patch that converted the cancel_delayed_work calls
      in bond_close to flush_delayed_work_sync, which eliminated the above
      problem.
      
      	His patch is incorporated, at least in principle, into this
      patch.  In this patch, we use cancel_delayed_work_sync in place of
      flush_delayed_work_sync, and also convert bond_uninit in addition to
      bond_close.
      
      	This conversion to _sync, however, opens new races between
      bond_close and three periodically executing workqueue functions:
      bond_mii_monitor, bond_alb_monitor and bond_activebackup_arp_mon.
      
      	The race occurs because bond_close and bond_uninit are always
      called with RTNL held, and these workqueue functions may acquire RTNL to
      perform failover-related activities.  If bond_close or bond_uninit is
      waiting in cancel_delayed_work_sync, deadlock occurs.
      
      	These deadlocks are resolved by having the workqueue functions
      acquire RTNL conditionally.  If the rtnl_trylock() fails, the functions
      reschedule and return immediately.  For the cases that are attempting to
      perform link failover, a delay of 1 is used; for the other cases, the
      normal interval is used (as those activities are not as time critical).
      
      	Additionally, the bond_mii_monitor function now stores the delay
      in a variable (mimicing the structure of activebackup_arp_mon).
      
      	Lastly, all of the above renders the kill_timers sentinel moot,
      and therefore it has been removed.
      Tested-by: NMitsuo Hayasaka <mitsuo.hayasaka.hu@hitachi.com>
      Signed-off-by: NJay Vosburgh <fubar@us.ibm.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      e6d265e8
    • S
      qlcnic: fix beacon and LED test. · 10ee0fae
      Sucheta Chakraborty 提交于
      o Updated version number to 5.0.25
      
      o Do not hold onto RESETTING_BIT for entire duration of LED/ beacon test.
        Instead, just checking for RESETTING_BIT not set before sending config_led
        command down to card.
      
      o Take rtnl_lock instead of RESETTING_BIT for beacon test while sending
        config_led command down to make sure interface cannot be brought up/ down.
      
      o Allocate and free resources if interface is down before
        sending the config_led command. This is to make sure config_led
        command sending doesn't fail.
      
      o Clear QLCNIC_LED_ENABLE bit if beacon/ LED test fails to start.
      Signed-off-by: NSucheta Chakraborty <sucheta.chakraborty@qlogic.com>
      Signed-off-by: NAnirban Chakraborty <anirban.chakraborty@qlogic.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      10ee0fae