- Oct 20, 2013
-
-
Dmitry Fleytman authored
This patch fixes part of TCP instability/low throughput problems on Xen. On transmit networking stack passes to Xen netfront driver a list of mbufs of up to PAGE_SIZE (4096) bytes each. In case the list consists of more than MAX_TX_REQ_FRAGS (18) fragments driver tries to defragment it with m_defrag(). m_defrag() in turn tries to build list of buffers of up to MCLBYTES (2048) bytes each. This leads to even longer chain and packet being dropped. As a result around 1% of TCP segments are lost and intensive TCP retransmissions and slowdowns occur. This patch makes m_defrag() use Jumbo packets zone for allocation, i.e. PAGE_SIZE per mbuf. This patch is pretty similar to what Glauber done on RX path before. Signed-off-by:
Dmitry Fleytman <dmitry@daynix.com>
-
- Oct 18, 2013
-
-
Pekka Enberg authored
Add a 'make check' target that runs whitelisted tests under OSv. Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
- Oct 17, 2013
-
-
Pekka Enberg authored
Like commit b17819df ("mmu: optimize searching for vmas") but for rest of core/mmu.cc. Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Pekka Enberg authored
Make the adding file message less intimidating. Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Tomasz Grabiec authored
Signed-off-by:
Tomasz Grabiec <tgrabiec@cloudius-systems.com>
-
Tomasz Grabiec authored
We should pass the image path to run.py Signed-off-by:
Tomasz Grabiec <tgrabiec@cloudius-systems.com>
-
Tomasz Grabiec authored
This will be needed my mkzfs.py Signed-off-by:
Tomasz Grabiec <tgrabiec@cloudius-systems.com>
-
Pekka Enberg authored
Start listening as soon as the guest is running. This makes host mkzfs.py conneciton less racy and fixes OSv image creation problems I'm seeing. Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Tomasz Grabiec authored
strlcpy() expects buffer length not string length. Signed-off-by:
Tomasz Grabiec <tgrabiec@cloudius-systems.com>
-
Tomasz Grabiec authored
When the build/ directory is on tmpfs then 'cache=none' option makes qemu fail with error: could not open disk image build/release/usr.img : Invalid argument Using tmpfs for build/ makes a _huge_ difference in build time on some setups. This patch adds fallback to 'unsafe' mode when direct IO is not supported. Signed-off-by:
Tomasz Grabiec <tgrabiec@cloudius-systems.com>
-
- Oct 16, 2013
-
-
Avi Kivity authored
Not supported by older qemus. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Not supported on osv, and reported to break the build on some systems. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Switch osv to built-in mkfs rather than zfs-fuse. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Drop sudo and global /zfs temporary directory. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
This drops the superuser requirement from the build process, and reduces the build prerequisite list. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Implement a parser for the cpio "newc" format. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Useful when a filesystem is not yet available. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
This allows using the boost libraries in shared objects. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Pekka Enberg authored
Dump registers on general protection fault for debugging purposes. Even if you have gdb available, getting to the exception frame is not always possible after OSv has crashed. Example output looks as follows: registers: RIP: 0x0000100000b7e913 RFL: 0x0000000000010202 CS: 0x0000000000000008 SS: 0x0000000000000010 RAX: 0xffffc000418ed278 RBX: 0xffffc00041b2c050 RCX: 0x0000000000000004 RDX: 0x0000000000000000 RSI: 0x0000000000000001 RDI: 0x43e0000000000000 RBP: 0x0000200008548d10 R8: 0xffffc000426e3010 R9: 0x0000000000000004 R10: 0x43e0000000000000 R11: 0xffffc00041b2c050 R12: 0xffffc000418ed1e8 R13: 0x0000000000000004 R14: 0x43e0000000000000 R15: 0xffffc00041b2c050 RSP: 0x0000200008548aa0 general protection fault Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Make the two definitions exactly equal so the compiler does not complain. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Create a file system on top of the pool. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
zfs utilities want /etc/mnttab, let them have it. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
-
Avi Kivity authored
Ignoring EPOLLET will generate more wakeups, but should work with most applications. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
For the moment, it only creates a zpool, not a filesystem. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Large partitions set head=254, not 255. Also be more accurate calculating the exact point of overflow.
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
More realistic. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
It's a superset of epoll_create(), so implement the latter in terms of the former. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Needed by boost.asio. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
std::streambuf<char> is defined as an "extern template", which means it is instantiated in the library, not at the point-of-use, in order to reduce object size and compilation time. One of its member functions, std::basic_streambuf::seekpos(...) has a parameter whose type depends on mbstate_t; this embeds the type name into the mangled function name. On Linux, mbstate_t is a typedef for __mbstate_t, so the latter type name is embedded into the mangled function name. On osv, there is no such typedef, so mbstate_t is embedded. This causes lookup to fail when loading a shared object that uses streambufs. Fix by defining mbstate_t in the same way as glibc. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-