It is not necessary to take the mutex for a condvar if you're just
waking a waiter. This just unnecessarily slows things down.
- --
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.7 (GNU/Linux)
iD8DBQFI
pattern for using a condvar is
1 take mutex
2 check condition
3 if condition is not fulfilled
3a call cond_wait
3b when returning, go back to step 2
4 unlock mutex
Anything else is buggy.
So, either your condvar use is wrong or you don't really want a condvar
in the first place. I
access is
atomic and that's all that counts here. With the mutex taken the woken
thread immediately runs into a brick wall and has to be put to sleep again.
- --
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.7 (GNU/Linux)
tomatically based on the data. String functions are
optimized to take cache sizes into account. That info comes from cpuid
as well (at least on Intel CPUs). It's crucial to get info based on the
current CPU.
- --
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
-BEG
. There are
always variables accessed this way (errno, for instance).
- --
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.4.7 (GNU/Linux)
iD8DBQFGsiE02ijCOnn/RHQRAusOAJoDB29M1JXWybmgdONnIZP+O7aYoACgmDth
7EXTDup10Didr2v
ernels.
I can certainly attest that there is a lot of demand for running Linux
domains with kernels other than the one running on the hardware. This
is Xen's bread and butter and from the albeit old numbers I've seen so
far KVM has problems competing.
--
➧ Ulrich Drepper ➧ Red Hat, Inc.
x86-64 uses only syscall which doesn't have the opportunity to be
intercepted in ring 1, right? That's the much more important target
going forward.
--
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro St ➧ Mountain View, CA ❖
signature.asc
Description: Ope
Avi Kivity wrote:
> [[Can't a paravirtualized kernel use a vdso to use int $0x80 instead of
> syscall?]]
No. The ABI is to inline syscall instructions. That's possible since
it's not as limited/broken as sysenter.
--
➧ Ulrich Drepper ➧ Red Hat, Inc. ➧ 444 Castro S