1. 30 Jul, 2008 29 commits
  2. 29 Jul, 2008 6 commits
  3. 28 Jul, 2008 5 commits
    • Rusty Russell's avatar
      lguest: turn Waker into a thread, not a process · 8c79873d
      Rusty Russell authored
      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: default avatarRusty Russell <rusty@rustcorp.com.au>
      8c79873d
    • Rusty Russell's avatar
      lguest: Enlarge virtio rings · 0f0c4fab
      Rusty Russell authored
      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: default avatarRusty Russell <rusty@rustcorp.com.au>
      0f0c4fab
    • Rusty Russell's avatar
      lguest: Use GSO/IFF_VNET_HDR extensions on tun/tap · 398f187d
      Rusty Russell authored
      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: default avatarRusty Russell <rusty@rustcorp.com.au>
      398f187d
    • Rusty Russell's avatar
      lguest: Remove 'network: no dma buffer!' warning · 9254926f
      Rusty Russell authored
      This warning can happen a lot under load, and it should be warnx not
      warn anwyay.
      Signed-off-by: default avatarRusty Russell <rusty@rustcorp.com.au>
      9254926f
    • Rusty Russell's avatar
      lguest: Adaptive timeout · aa124984
      Rusty Russell authored
      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: default avatarRusty Russell <rusty@rustcorp.com.au>
      aa124984