1. 09 12月, 2009 18 次提交
    • E
      tcp: Fix a connect() race with timewait sockets · 9327f705
      Eric Dumazet 提交于
      First patch changes __inet_hash_nolisten() and __inet6_hash()
      to get a timewait parameter to be able to unhash it from ehash
      at same time the new socket is inserted in hash.
      
      This makes sure timewait socket wont be found by a concurrent
      writer in __inet_check_established()
      Reported-by: Nkapil dakhane <kdakhane@gmail.com>
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      9327f705
    • D
    • E
      ixgbe: Fix TX stats accounting · 60d51134
      Eric Dumazet 提交于
      Here is an updated version, because ixgbe_get_ethtool_stats()
      needs to call dev_get_stats() or "ethtool -S" wont give
      correct tx_bytes/tx_packets values.
      
      Several cpus can update netdev->stats.tx_bytes & netdev->stats.tx_packets
      in parallel. In this case, TX stats are under estimated and false sharing
      takes place.
      
      After a pktgen session sending exactly 200000000 packets :
      # ifconfig fiber0 | grep TX
                TX packets:198501982 errors:0 dropped:0 overruns:0 carrier:0
      
      Multi queue devices should instead use txq->tx_bytes & txq->tx_packets
      in their xmit() method (appropriate txq lock already held by caller, no
      cache line miss), or use appropriate locking.
      
      After patch, same pktgen session gives :
      
      # ifconfig fiber0 | grep TX
                TX packets:200000000 errors:0 dropped:0 overruns:0 carrier:0
      Signed-off-by: NEric Dumazet <eric.dumazet@gmail.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      60d51134
    • B
      e1000e: only perform ESB2 MDIC workaround on certain configurations · 3421eecd
      Bruce Allan 提交于
      A workaround added for all ESB2 devices (adds a delay for all MDIC accesses
      which resolves an issue with the MDIC ready bit being set prematurely) is
      applicable only to devices in which the MAC-PHY interconnect is not
      operating in a certain mode with in-band MDIO.  Check the control register
      for the operating mode and enable the workaround accordingly.
      Signed-off-by: NBruce Allan <bruce.w.allan@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3421eecd
    • B
      e1000e: replace incorrect use of GG82563_REG macro · 07818950
      Bruce Allan 提交于
      The GG82563_REG() macro should not be used to determine the offset provided
      to the e1000e_[read|write]_kmrn_reg() functions since the first argument to
      the macro is already implied and gets masked off anyway in the functions.
      The resultant register reads/writes with this patch are functionally the
      same as before.
      Signed-off-by: NBruce Allan <bruce.w.allan@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      07818950
    • B
      e1000e: minor correction to name of bit in CTRL_EXT register · 93a23f48
      Bruce Allan 提交于
      Bit 7 in the CTRL_REG register is actually the Software Definable Pin 3,
      not the Software Definable Pin 7.
      Signed-off-by: NBruce Allan <bruce.w.allan@intel.com>
      Signed-off-by: NJeff Kirsher <jeffrey.t.kirsher@intel.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      93a23f48
    • D
      tcp: Remove runtime check that can never be true. · 3dc78932
      David S. Miller 提交于
      GCC even warns about it, as reported by Andrew Morton:
      
      net/ipv4/tcp.c: In function 'do_tcp_getsockopt':
      net/ipv4/tcp.c:2544: warning: comparison is always false due to limited range of data type
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      3dc78932
    • D
    • L
      sctp: fix compile error due to sysctl mismerge · a252e749
      Linus Torvalds 提交于
      I messed up the merge in d7fc02c7, where
      the conflict in question wasn't just about CTL_UNNUMBERED being removed,
      but the 'strategy' field is too (sysctl handling is now done through the
      /proc interface, with no duplicate protocols for reading the data).
      Reported-by: NLarry Finger <Larry.Finger@lwfinger.net>
      Reported-by: NIngo Molnar <mingo@elte.hu>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      a252e749
    • L
      Merge branch 'for-2.6.33' of git://git.kernel.dk/linux-2.6-block · 6035ccd8
      Linus Torvalds 提交于
      * 'for-2.6.33' of git://git.kernel.dk/linux-2.6-block: (113 commits)
        cfq-iosched: Do not access cfqq after freeing it
        block: include linux/err.h to use ERR_PTR
        cfq-iosched: use call_rcu() instead of doing grace period stall on queue exit
        blkio: Allow CFQ group IO scheduling even when CFQ is a module
        blkio: Implement dynamic io controlling policy registration
        blkio: Export some symbols from blkio as its user CFQ can be a module
        block: Fix io_context leak after failure of clone with CLONE_IO
        block: Fix io_context leak after clone with CLONE_IO
        cfq-iosched: make nonrot check logic consistent
        io controller: quick fix for blk-cgroup and modular CFQ
        cfq-iosched: move IO controller declerations to a header file
        cfq-iosched: fix compile problem with !CONFIG_CGROUP
        blkio: Documentation
        blkio: Wait on sync-noidle queue even if rq_noidle = 1
        blkio: Implement group_isolation tunable
        blkio: Determine async workload length based on total number of queues
        blkio: Wait for cfq queue to get backlogged if group is empty
        blkio: Propagate cgroup weight updation to cfq groups
        blkio: Drop the reference to queue once the task changes cgroup
        blkio: Provide some isolation between groups
        ...
      6035ccd8
    • L
      Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev · 23eb3b64
      Linus Torvalds 提交于
      * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: (54 commits)
        Revert "pata_sis: Implement MWDMA for the UDMA 133 capable chips"
        libata: Clarify ata_set_lba_range_entries function
        libata: Report zeroed read after TRIM and max discard size
        pata_hpt3x2n: fix overclocked MWDMA0 timing
        pata_it8213: MWDMA0 is unsupported
        [libata] MWDMA0 is unsupported on PIIX-like PATA controllers
        pata_via: clear UDMA transfer mode bit for PIO and MWDMA
        pata_sis: Power Management fix
        pata_rz1000: Power Management fix
        pata_radisys: fix UDMA handling
        pata_ns87415: Power Management fix
        pata_marvell: fix marvell_pre_reset() documentation
        pata_legacy: add pointers to QDI65x0 documentation
        pata_legacy: fix access to control register for QDI6580
        pata_legacy: fix QDI6580DP support
        pata_it8213: fix it8213_pre_reset() documentation
        pata_it8213: fix wrong MWDMA timings being programmed
        pata_it8213: fix PIO2 underclocking
        pata_it8213: fix wrong PIO timings being programmed
        pata_it8213: fix UDMA handling
        ...
      23eb3b64
    • L
      Merge branch 'omap-for-linus' of... · 1c496784
      Linus Torvalds 提交于
      Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6
      
      * 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (149 commits)
        arm: omap: Add omap3_defconfig
        AM35xx: Defconfig for AM3517 EVM board
        AM35xx: Add support for AM3517 EVM board
        omap: 3630sdp: defconfig creation
        omap: 3630sdp: introduce 3630 sdp board support
        omap3: Add defconfig for IGEP v2 board
        omap3: Add minimal IGEP v2 support
        omap3: Add CompuLab CM-T35 defconfig
        omap3: Add CompuLab CM-T35 board support
        omap3: rx51: Add wl1251 wlan driver support
        omap3: rx51: Add SDRAM init
        omap1: Add default kernel configuration for Herald
        omap1: Add board support and LCD for HTC Herald
        omap: zoom2: update defconfig for LL_DEBUG_NONE
        omap: zoom3: defconfig creation
        omap3: zoom: Introduce zoom3 board support
        omap3: zoom: Drop i2c-1 speed to 2400
        omap3: zoom: rename zoom2 name to generic zoom
        omap3: zoom: split board file for software reuse
        omap3evm: MIgrate to smsc911x ethernet driver
        ...
      
      Fix trivial conflict (two unrelated config options added next to each
      other) in arch/arm/mach-omap2/Makefile
      1c496784
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · adf9904d
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k: parport_mfc3 - Not makes it a bool before the comparison.
        m68k: don't export static inline functions
        fbdev: atafb - add palette register check
        m68k: Remove the BKL from sys_execve
        m68k: Cleanup linker scripts using new linker script macros.
        m68k: Make thread_info.h usable from assembly.
        m68knommu: define arch_has_single_step() and friends
        m68k: ptrace fixes
        m68k: use generic code for ptrace requests
        rtc: Add an RTC driver for the Ricoh RP5C01
        rtc: Add an RTC driver for the Oki MSM6242
      adf9904d
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6 · bb592cf4
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
        ieee1394: Use hweight32
        firewire: cdev: reduce stack usage by ioctl_dispatch
        firewire: ohci: 0 may be a valid DMA address
        firewire: core: WARN on wrong usage of core transaction functions
        firewire: core: optimize Topology Map creation
        firewire: core: clarify generate_config_rom usage
        firewire: optimize config ROM creation
        firewire: cdev: normalize variable names
        firewire: normalize style of queue_work wrappers
        firewire: cdev: fix memory leak in an error path
      bb592cf4
    • L
      Merge branch 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm · 79c9601c
      Linus Torvalds 提交于
      * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (272 commits)
        Fix soc_common PCMCIA configuration
        ARM: 5827/1: SA1100: h3100/h3600: emit messages on failed gpio_request
        ARM: 5826/1: SA1100: h3100/h3600: always build htc-egpio driver
        ARM: 5825/1: SA1100: h3600: update defconfig
        ARM: 5824/1: SA1100: reuse h3600 PCMCIA driver on h3100
        ARM: 5823/1: SA1100: h3100/h3600: add support for gpio-keys
        ARM: 5822/1: SA1100: h3100/h3600: clean up #includes
        ARM: 5821/1: SA1100: h3100/h3600: revise copyright boilerplates
        ARM: 5820/1: SA1100: h3100/h3600: split h3600.c
        ARM: 5819/1: SA1100: h3100/h3600: merge h3600.h and h3600_gpio.h into h3xxx.h
        ARM: 5818/1: SA1100: h3100/h3600: drop old GPIO definitions
        ARM: 5817/1: SA1100: h3100/h3600: configure all unused gpios as inputs
        ARM: 5816/1: SA1100: h3600: remove IRQ_GPIO_* definitions
        ARM: 5815/1: SA1100: h3100/h3600: remove now unused assign_h3600_egpio handlers
        ARM: 5814/1: SA1100: h3100/h3600: convert all users of assign_h3600_egpio to gpiolib
        ARM: 5813/1: SA1100: h3100/h3600: add htc-egpio driver
        ARM: 5812/1: SA1100: h3100/h3600: separate machine-specific LCD helpers
        ARM: 5811/2: pcmcia: convert sa1100_h3600 driver to gpiolib
        ARM: 5799/1: SA1100: h3600: stop setting direction for LCD pins
        ARM: 5798/1: SA1100: h3600: remove unused cruft from h3600.h
        ...
      79c9601c
    • L
      Merge branch 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · 41440ffe
      Linus Torvalds 提交于
      * 'i2c-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        i2c-stub: Documentation update
        i2c-stub: Allow user to disable some commands
        i2c-stub: Implement I2C block support
        i2c: Refactor for_each callbacks
        i2c-i801: Retry on lost arbitration
        i2c: Remove big kernel lock from i2cdev_open
        ics932s401: Clean up detect function
        i2c: Simplify i2c_detect_address
        i2c: Drop probe, ignore and force module parameters
        i2c: Add missing __devinit markers to old i2c adapter drivers
        i2c: Bus drivers don't have to support I2C_M_REV_DIR_ADDR
        i2c: Prevent priority inversion on top of bus lock
        i2c-voodoo3: Delete
        i2c-powermac: Drop temporary name buffer
        i2c-powermac: Include the i2c_adapter in struct pmac_i2c_bus
        i2c-powermac: Log errors
        i2c-powermac: Refactor i2c_powermac_smbus_xfer
        i2c-powermac: Reject unsupported I2C transactions
        i2c/chips: Move ds1682 to drivers/misc
      41440ffe
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6 · dad3de7d
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6:
        PM: Add flag for devices capable of generating run-time wake-up events
        PM / Runtime: Remove unnecessary braces in __pm_runtime_set_status()
        PM / Runtime: Make documentation of runtime_idle() agree with the code
        PM / Runtime: Ensure timer_expires is nonzero in pm_schedule_suspend()
        PM / Runtime: Use deferred_resume flag in pm_request_resume
        PM / Runtime: Export the PM runtime workqueue
        PM / Runtime: Fix lockdep warning in __pm_runtime_set_status()
        PM / Hibernate: Swap, use KERN_CONT
        PM / Hibernate: Shift remaining code from swsusp.c to hibernate.c
        PM / Hibernate: Move swap functions to kernel/power/swap.c.
        PM / freezer: Don't get over-anxious while waiting
      dad3de7d
    • L
      Merge branch 'kvm-updates/2.6.33' of git://git.kernel.org/pub/scm/virt/kvm/kvm · ed9216c1
      Linus Torvalds 提交于
      * 'kvm-updates/2.6.33' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (84 commits)
        KVM: VMX: Fix comparison of guest efer with stale host value
        KVM: s390: Fix prefix register checking in arch/s390/kvm/sigp.c
        KVM: Drop user return notifier when disabling virtualization on a cpu
        KVM: VMX: Disable unrestricted guest when EPT disabled
        KVM: x86 emulator: limit instructions to 15 bytes
        KVM: s390: Make psw available on all exits, not just a subset
        KVM: x86: Add KVM_GET/SET_VCPU_EVENTS
        KVM: VMX: Report unexpected simultaneous exceptions as internal errors
        KVM: Allow internal errors reported to userspace to carry extra data
        KVM: Reorder IOCTLs in main kvm.h
        KVM: x86: Polish exception injection via KVM_SET_GUEST_DEBUG
        KVM: only clear irq_source_id if irqchip is present
        KVM: x86: disallow KVM_{SET,GET}_LAPIC without allocated in-kernel lapic
        KVM: x86: disallow multiple KVM_CREATE_IRQCHIP
        KVM: VMX: Remove vmx->msr_offset_efer
        KVM: MMU: update invlpg handler comment
        KVM: VMX: move CR3/PDPTR update to vmx_set_cr3
        KVM: remove duplicated task_switch check
        KVM: powerpc: Fix BUILD_BUG_ON condition
        KVM: VMX: Use shared msr infrastructure
        ...
      
      Trivial conflicts due to new Kconfig options in arch/Kconfig and kernel/Makefile
      ed9216c1
  2. 08 12月, 2009 22 次提交