- Jul 29, 2013
-
-
Avi Kivity authored
kvm provides a way to EOI without exiting; detect its availability and use it.
-
Avi Kivity authored
Works with xapic, and allows us to hook eoi().
-
Avi Kivity authored
-
Avi Kivity authored
kvm's pv_eoi functionality fails if any vmexits are taken before the EOI (likely due to a bug). Work around this by deferring the handler until after the interrupt has been EOIed. Since level-triggered interrupts must be acked at the device level prior to the EOI, add an additional handler to be called prior to the EOI.
-
Avi Kivity authored
Make sure percpu data is aligned correctly as some hardware features expect it.
-
- Jul 28, 2013
-
-
Avi Kivity authored
Facilities for capturing call stack on arbitrary tracepoints. New command: 'perf callstack <tracepoint>'
-
Glauber Costa authored
Although we are not expecting to have many interfaces, it is still useful to print the interface name when we fail to set its parameters. (For starters, we may very well have plenty, and it is also good for debugging)
-
Avi Kivity authored
Replace the lambda-based with_lock API with a block-based API.
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
The current with_lock() has the downside of using relatively large lambdas. Lambdas need extra syntax (and thought) to capture variables, and change the meaning of 'return', 'break', and 'continue'. The new with_lock (named WITH_LOCK, since it's a macro) accepts a statement instead of a lambda: WITH_LOCK(mtx) { do_something(); WITH_LOCK(preempt_lock) { do_something_else(); } } In a WITH_LOCK context, any return, break, continue, or exception which exits the block will cause the lock's unlock() method to be called.
-
Avi Kivity authored
sprintf(fmt, ...) - returns a std::stream fprintf(os, fmt, ...) - prints to a std::ostream& Easier than the usualy method of constructing a temporary ostringstream and formatting into that.
-
Avi Kivity authored
Use: perf callstack tracepoint to list frequent callstacks for a tracepoint (from 'perf list')
-
Avi Kivity authored
-
Avi Kivity authored
-
Avi Kivity authored
The collector can attach to a tracepoint and collect backtraces; later the traces can be dumped as a histogram.
-
Avi Kivity authored
Needed for safe backtrace.
-
Avi Kivity authored
A backtrace() implementation which is safe for use in wierd contexts like interrupts. Needs -fno-omit-frame-pointer, but doesn't crash if some object is compiled without it.
-
Glauber Costa authored
Some of our files include headers inside an "extern C" declaration. The problem with that eventually we will have definitions with C linkage - since they are inside extern "C" - being included in places where __cplusplus is defined. I specifically worked around this int the sx_xlock implementation, but it is starting to create bigger problems. Fix it by making all headers usable from whichever place by themselves, instead of relying in extern inclusions in the cpp files
-
Christoph Hellwig authored
Mostly to get the X bits on directories right for lookups, as well as checks for hard readonly files.
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
It may not be available yet. Change the mode checks to use zp->z_mode, and remove the devvp checks as we do not support device nodes outside of devfs.
-
Christoph Hellwig authored
We might not have a vnode assigned to a znode yet when doing access checks from lookup.
-
Christoph Hellwig authored
-
Christoph Hellwig authored
truncate() and ftruncate() aren't wired up in the VFS yet, so far this is the only way to get to vnop_truncate.
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-
Christoph Hellwig authored
-