- Dec 19, 2013
-
-
Avi Kivity authored
It's just to painful to do this piecemeal. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com>
-
Avi Kivity authored
Signed-off-by:
Avi Kivity <avi@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Glauber Costa authored
Commit 49497bdb added support for clock_gettime through syscall, because one of the C++ libraries uses it this way. Turns out clock_getres can also be reached the same way. Signed-off-by:
Glauber Costa <glommer@cloudius-systems.com> Reviewed-by:
Nadav Har'El <nyh@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Vlad Zolotarov authored
- Make ifconfig code use a new if_get_if_info() interface. - Expanded the output of the ifconfig: exposed a few more statistics. Signed-off-by:
Vlad Zolotarov <vladz@cloudius-systems.com> Reviewed-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Vlad Zolotarov authored
Added ifnet->if_get_if_info() method to collect the internally gathered statistics into the standard if_data struct. Signed-off-by:
Vlad Zolotarov <vladz@cloudius-systems.com> Reviewed-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Vlad Zolotarov authored
Signed-off-by:
Vlad Zolotarov <vladz@cloudius-systems.com> Reviewed-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Vlad Zolotarov authored
Added IFCAP_HWSTATS iface capability indicating that device driver and HW are capable to handle the statistics internally. Signed-off-by:
Vlad Zolotarov <vladz@cloudius-systems.com> Reviewed-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Vlad Zolotarov authored
Introducing rxq and txq structs representing the Rx and Tx queues data correspondingly. Signed-off-by:
Vlad Zolotarov <vladz@cloudius-systems.com> Reviewed-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Dmitry Fleytman authored
Introduced variable fs_size_mb - FS size in megabytes. Useful for debugging on EC2. Reviewed-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Dmitry Fleytman <dmitry@daynix.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Avi Kivity authored
There is no need for release memory ordering when assigning a null pointer to an rcu pointer, since the null pointer cannot be dereferenced. Add a specialization of assign() that takes advantage of this fact. Reviewed-by:
Nadav Har'El <nyh@cloudius-systems.com> Signed-off-by:
Avi Kivity <avi@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
The add_buf_wait will sleep if there is not enough buf in the avail ring. When there is more space available, it can be woke up by wakeup_waiter. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Dmitry Fleytman authored
In some cases netperf relies on SIGALRM to wake sleeping send*/recv*() calls. alarm() API on OSv doesn't fully comply to specification, i.e. it executes SIGALRM handler but doesn't interrupt sleeping syscalls. Because of this there is a race condition that makes netserver sleep infinitely in some cases. This commit introduces patch for netperf that acts as a work-around for this problem by setting socket timeout for network operations. This commit also introduces simple script that builds patched netperf in automated manner. Signed-off-by:
Dmitry Fleytman <dmitry@daynix.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
The name is shorter and clearer and more consistent with the name used in virtio-scsi. Signed-off-by:
Asias He <asias.hejun@gmail.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
Signed-off-by:
Asias He <asias.hejun@gmail.com> [ penberg: keep comments vertically aligned ] Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
bio is already signalled in all cases. No need to do it in destructor. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
It's better not to indent after the namespace specifier. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
Change from blk::make_virtio_request to blk::make_request. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
We are under the virtio namespace, it makes no sense to repeat the virtio prefix again in the virito_blk driver. Change the naming from virtio::virtio_blk to virtio::blk. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
The check is moved to bdev_read and bdev_write. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
The check is moved to bdev_read and bdev_write. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
The check is moved to bdev_read and bdev_write. Sigaed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Raphael S. Carvalho authored
Over the process of creating a zpool, history_str_get() will be eventually called by zfs_ioc_pool_create(). history_str_get() will not work as expected as it fully relies on the function copyinstr() which is currently unimplemented. After that, spa_create() will be called with history_str storing trash, thus making the spa_history_log filled with completely wrong entries. Let's fix this problem simply by implementing copyinstr. By the way, copystr has basically the same semantics as copyinstr, so let's implement it as well. It's not being used anywhere, but who knows? It might be needed in the future by some bsd compliant application. As far as I know, this problem didn't manifest *visibly* anywhere as the spa history log wasn't intentionally used by us yet. I found the problem while auditing code. Signed-off-by:
Raphael S. Carvalho <raphaelsc@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Pekka Enberg authored
This reverts commit 97626d36. As pointed out Tomek, "-u" flag is already passed in mkzfs.py.
-
Gleb Natapov authored
mprotect() should fails with ENOMEM if it is called on non mapped virtual address, but this check is done by mmu::ismapped(). Signed-off-by:
Gleb Natapov <gleb@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
- Dec 18, 2013
-
-
Glauber Costa authored
Just came across this. Trivial to fix. Signed-off-by:
Glauber Costa <glommer@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Avi Kivity authored
Since there's no user data on the image, we can safely cache it, improving build performance. Helpful duing 'git bisect'. Signed-off-by:
Avi Kivity <avi@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Pekka Enberg authored
Commit 649654af ("Fix race between join() and thread completion") fixed the problem so bring back the test case. Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Tomasz Grabiec authored
Currently we use implementation from bsd/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c which is using global mutex. This showes up on wait profile of ZFS writes: (...) \-- 469.96 us (0.00%, #250) arc_do_user_evicts \-- 469.96 us (0.00%, #250) dbuf_do_evict |-- 355.93 us (0.00%, #154) dbuf_destroy (...) | \-- 76.60 us (0.00%, #53) zrl_add | atomic_cas_32 | lockfree_mutex_lock | sched::thread::wait() | |-- 66.14 us (0.00%, #56) dbuf_clear | zrl_add | atomic_cas_32 | lockfree_mutex_lock | sched::thread::wait() | \-- 47.89 us (0.00%, #40) dbuf_rele_and_unlock atomic_add_64_nv lockfree_mutex_lock sched::thread::wait() This patch switches to amd64 implementation. Signed-off-by:
Tomasz Grabiec <tgrabiec@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Nadav Har'El authored
af_local.h declares a couple of functions implemented in af_local.cc. There is no reason for pipe.cc to include it. Signed-off-by:
Nadav Har'El <nyh@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Glauber Costa authored
This patch adds the basic of memory tracking, and exposes an interface to for that data to be collected. We basically start with all stats at zero, and as we add memory to the System, we bump it up and recalculate the watermarks (to avoid recomputing them all the time). When a page range comes up, it will be added as free memory. We operate based on what is currently sitting in the page ranges. This means that we are effectively ignoring memory that sit in pools for memory usage. I think it is a good assumption because it allow us to focus in the big picture, and leave the pools to be used as liquid currency. Signed-off-by:
Glauber Costa <glommer@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
This adds initial virtio-scsi support. We have no scsi layer in osv, in this implementation virtio-scsi works directly with the bio layer. It translates BIO_READ, BIO_WRITE and BIO_FLUSH to SCSI CMD. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
bio with BIO_SCSI flag contains a SCSI command. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
This can be used by the low-level driver to store private data, e.g. virtio-scsi driver uses it to store a virtio-scsi request bound to this bio. Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-
Asias He authored
Signed-off-by:
Asias He <asias@cloudius-systems.com> Signed-off-by:
Pekka Enberg <penberg@cloudius-systems.com>
-