diff options
Diffstat (limited to 'results/classifier/accel-gemma3:12b/kvm/1381846')
| -rw-r--r-- | results/classifier/accel-gemma3:12b/kvm/1381846 | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/results/classifier/accel-gemma3:12b/kvm/1381846 b/results/classifier/accel-gemma3:12b/kvm/1381846 new file mode 100644 index 000000000..ff57996b8 --- /dev/null +++ b/results/classifier/accel-gemma3:12b/kvm/1381846 @@ -0,0 +1,9 @@ + +Data sent to parallel port in guest is lost if host buffer fills up + +It appears that qemu will blindly write characters out to the chardev and drop them on the floor if a write fails with EAGAIN, without initiating flow control (via BUSY and ACK) back to the guest. If the host buffer is too small, or is talking to a hardware device that is too slow, data will be lost. + +I notice this problem when I run a DOS program with this on the qemu command line: +-parallel /dev/usb/lp0 + +I can work around this problem by buffering via a pipe, but this looks like a general problem. Is there a way to wire up the readiness of the output chardev to the parallel port ACK and BUSY lines, and signal an ISA interrupt? I don't know the code well enough to tell. \ No newline at end of file |