Hello all
First, I forgot to say, that I use the QEMU stable
version 11.0 on a Gentoo box. I did some more testings.
The QEMU instance is starting and sometimes the OS starts
to load, but then QEMU stucks and consumes 100% CPU.
I checked the startup it with strace. The start of QEMU
itself produces the same output in strace, regardless if
started by the PHP CLI or by mod_php from Apache.
I then attached strace to the QEMU process, and there is
a big difference.
When starting QEMU with the PHP script from the CLI (as
the same user as the web server), it works and I get
something like that:
...
select(12, [6 11], [], [], {4, 993369}) = ?
ERESTARTNOHAND (To be restarted)
--- SIGALRM (Alarm clock) @ 0 (0) ---
write(7, "\0"..., 1) = 1
sigreturn() = ? (mask now
[])
clock_gettime(CLOCK_MONOTONIC, {2818001, 146485529}) = 0
clock_gettime(CLOCK_MONOTONIC, {2818001, 146548886}) = 0
timer_gettime(0, {it_interval={0, 0}, it_value={0, 0}})
= 0
timer_settime(0, 0, {it_interval={0, 0}, it_value={0,
250000}}, NULL) = 0
clock_gettime(CLOCK_MONOTONIC, {2818001, 146758750}) = 0
clock_gettime(CLOCK_MONOTONIC, {2818001, 146819115}) = 0
clock_gettime(CLOCK_MONOTONIC, {2818001, 146879549}) = 0
clock_gettime(CLOCK_MONOTONIC, {2818001, 146938839}) = 0
--- SIGALRM (Alarm clock) @ 0 (0) ---
write(7, "\0"..., 1) = 1
sigreturn() = ? (mask now
[])
...
If QEMU has been started by the web server with the same
script and user, I get:
...
select(11, [5 10], [], [], {3, 767239}) = 0 (Timeout)
clock_gettime(CLOCK_MONOTONIC, {2817617, 818297714}) = 0
clock_gettime(CLOCK_MONOTONIC, {2817617, 818382772}) = 0
clock_gettime(CLOCK_MONOTONIC, {2817617, 818444894}) = 0
timer_gettime(0, {it_interval={0, 0}, it_value={0, 0}})
= 0
timer_settime(0, 0, {it_interval={0, 0}, it_value={0,
250000}}, NULL) = 0
clock_gettime(CLOCK_MONOTONIC, {2817617, 818698197}) = 0
clock_gettime(CLOCK_MONOTONIC, {2817617, 818759263}) = 0
timer_gettime(0, {it_interval={0, 0}, it_value={0,
67453}}) = 0
clock_gettime(CLOCK_MONOTONIC, {2817617, 818894002}) = 0
clock_gettime(CLOCK_MONOTONIC, {2817617, 818954673}) = 0
timer_gettime(0, {it_interval={0, 0}, it_value={0, 0}})
= 0
timer_settime(0, 0, {it_interval={0, 0}, it_value={0,
250000}}, NULL) = 0
...
There are no SIGALRM executed. What can be the reason
for that ?
Andreas