1. 31 7月, 2008 28 次提交
  2. 29 7月, 2008 12 次提交
    • L
      Linux 2.6.27-rc1 · 6e86841d
      Linus Torvalds 提交于
      6e86841d
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus · 7874d351
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
        lguest: turn Waker into a thread, not a process
        lguest: Enlarge virtio rings
        lguest: Use GSO/IFF_VNET_HDR extensions on tun/tap
        lguest: Remove 'network: no dma buffer!' warning
        lguest: Adaptive timeout
        lguest: Tell Guest net not to notify us on every packet xmit
        lguest: net block unneeded receive queue update notifications
        lguest: wrap last_avail accesses.
        lguest: use cpu capability accessors
        lguest: virtio-rng support
        lguest: Support assigning a MAC address
        lguest: Don't leak /dev/zero fd
        lguest: fix verbose printing of device features.
        lguest: fix switcher_page leak on unload
        lguest: Guest int3 fix
        lguest: set max_pfn_mapped, growl loudly at Yinghai Lu
      7874d351
    • L
      Merge branch 'for-linus' of git://git.o-hand.com/linux-mfd · 5dfb66ba
      Linus Torvalds 提交于
      * 'for-linus' of git://git.o-hand.com/linux-mfd:
        mfd: accept pure device as a parent, not only platform_device
        mfd: add platform_data to mfd_cell
        mfd: Coding style fixes
        mfd: Use to_platform_device instead of container_of
      5dfb66ba
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 · 1d9b9f6a
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (21 commits)
        x86/PCI: use dev_printk when possible
        PCI: add D3 power state avoidance quirk
        PCI: fix bogus "'device' may be used uninitialized" warning in pci_slot
        PCI: add an option to allow ASPM enabled forcibly
        PCI: disable ASPM on pre-1.1 PCIe devices
        PCI: disable ASPM per ACPI FADT setting
        PCI MSI: Don't disable MSIs if the mask bit isn't supported
        PCI: handle 64-bit resources better on 32-bit machines
        PCI: rewrite PCI BAR reading code
        PCI: document pci_target_state
        PCI hotplug: fix typo in pcie hotplug output
        x86 gart: replace to_pages macro with iommu_num_pages
        x86, AMD IOMMU: replace to_pages macro with iommu_num_pages
        iommu: add iommu_num_pages helper function
        dma-coherent: add documentation to new interfaces
        Cris: convert to using generic dma-coherent mem allocator
        Sh: use generic per-device coherent dma allocator
        ARM: support generic per-device coherent dma mem
        Generic dma-coherent: fix DMA_MEMORY_EXCLUSIVE
        x86: use generic per-device dma coherent allocator
        ...
      1d9b9f6a
    • L
    • L
      Fix 'get_user_pages_fast()' with non-page-aligned start address · 9b79022c
      Linus Torvalds 提交于
      Alexey Dobriyan reported trouble with LTP with the new fast-gup code,
      and Johannes Weiner debugged it to non-page-aligned addresses, where the
      new get_user_pages_fast() code would do all the wrong things, including
      just traversing past the end of the requested area due to 'addr' never
      matching 'end' exactly.
      
      This is not a pretty fix, and we may actually want to move the alignment
      into generic code, leaving just the core code per-arch, but Alexey
      verified that the vmsplice01 LTP test doesn't crash with this.
      Reported-and-tested-by: NAlexey Dobriyan <adobriyan@gmail.com>
      Debugged-by: NJohannes Weiner <hannes@saeurebad.de>
      Cc: Nick Piggin <npiggin@suse.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      9b79022c
    • R
      lguest: turn Waker into a thread, not a process · 8c79873d
      Rusty Russell 提交于
      lguest uses a Waker process to break it out of the kernel (ie.
      actually running the guest) when file descriptor needs attention.
      
      Changing this from a process to a thread somewhat simplifies things:
      it can directly access the fd_set of things to watch.  More
      importantly, it means that the Waker can see Guest memory correctly,
      so /dev/vring file descriptors will work as anticipated (the
      alternative is to actually mmap MAP_SHARED, but you can't do that with
      /dev/zero).
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      8c79873d
    • R
      lguest: Enlarge virtio rings · 0f0c4fab
      Rusty Russell 提交于
      With big packets, 128 entries is a little small.
      
      Guest -> Host 1GB TCP:
      Before: 8.43625 seconds xmit 95640 recv 198266 timeout 49771 usec 1252
      After: 8.01099 seconds xmit 49200 recv 102263 timeout 26014 usec 2118
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      0f0c4fab
    • R
      lguest: Use GSO/IFF_VNET_HDR extensions on tun/tap · 398f187d
      Rusty Russell 提交于
      Guest -> Host 1GB TCP:
      Before 20.1974 seconds xmit 214510 recv 5 timeout 214491 usec 278
      After 8.43625 seconds xmit 95640 recv 198266 timeout 49771 usec 1252
      
      Host -> Guest 1GB TCP:
      Before: Seconds 9.98854 xmit 172166 recv 5344 timeout 172157 usec 251
      After: Seconds 5.72803 xmit 244322 recv 9919 timeout 244302 usec 156
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      398f187d
    • R
      lguest: Remove 'network: no dma buffer!' warning · 9254926f
      Rusty Russell 提交于
      This warning can happen a lot under load, and it should be warnx not
      warn anwyay.
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      9254926f
    • R
      lguest: Adaptive timeout · aa124984
      Rusty Russell 提交于
      Since the correct timeout value varies, use a heuristic which adjusts
      the timeout depending on how many packets we've seen.  This gives
      slightly worse results, but doesn't need tweaking when GSO is
      introduced.
      
      500 usec	19.1887		xmit 561141 recv 1 timeout 559657
      Dynamic (278)	20.1974		xmit 214510 recv 5 timeout 214491 usec 278
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      aa124984
    • R
      lguest: Tell Guest net not to notify us on every packet xmit · a161883a
      Rusty Russell 提交于
      virtio_ring has the ability to suppress notifications.  This prevents
      a guest exit for every packet, but we need to set a timer on packet
      receipt to re-check if there were any remaining packets.
      
      Here are the times for 1G TCP Guest->Host with different timeout
      settings (it matters because the TCP window doesn't grow big enough to
      fill the entire buffer):
      
      Timeout value	Seconds		Xmit/Recv/Timeout
      None (before)	25.3784		xmit 7750233 recv 1
      2500 usec	62.5119		xmit 207020 recv 2 timeout 207020
      1000 usec	34.5379		xmit 207003 recv 2 timeout 207003
      750 usec	29.2305		xmit 207002 recv 1 timeout 207002
      500 usec	19.1887		xmit 561141 recv 1 timeout 559657
      250 usec	20.0465		xmit 214128 recv 2 timeout 214110
      100 usec	19.2583		xmit 561621 recv 1 timeout 560153
      
      (Note that these values are sensitive to the GSO patches which come
       later, and probably other traffic-related variables, so take with a
       large grain of salt).
      Signed-off-by: NRusty Russell <rusty@rustcorp.com.au>
      a161883a