On Mon, 2015-09-21 at 22:54 +0200, Francois Romieu wrote:
> David Woodhouse <dw...@infradead.org> :
> [...]
> > I'm actually having second thoughts about this one since realising that
> > QEMU doesn't implement it correctly. The workaround isn't *that* horrid
> > but it's not clear it's enough of a performance win — or whether it's
> > entirely necessary for catching my TX stall.
> 
> It don't indulge in this kind of fetish but I'm fine with people who want
> to play with QEMU 8139cp emulation where they could use virtio. They should
> imvho realize that it's their job to fix QEMU 8139cp emulation, not the
> other way around.

Oh, I'll fix the QEMU emulation (but not this week; updating my router
has taken long enough already and I have Real Work™ to do).

But those fixes will take time to propagate to actual users. I'm not
sure it's so reasonable to knowingly break the 8139cp driver for all
currently-released versions of QEMU.

It wouldn't surprise me to find that QEMU probably accounts for the
*majority* of 8139cp use on modern Linux kernels. I've had to fix
regressions which *only* fail on real hardware, and were *only* tested
on QEMU :)

> Please keep things sane (*cough*) and avoid the qemu workaround.

I don't even know that I need it. As you saw in my last WIP patch for
catching the TX stall, I was just checking for TxEmpty without TxDone.
An earlier iteration had actually remembered the last slot that was
already present when we prodded the TxPoll, and would warn on getting a
TxEmpty interrupt while that slot was still owned by the hardware. But
that has the *same* false positives, only *after* the initial stall,
that my current version has.

So I'm just not sure I care about eliminating the gratuitous TxPoll
writes. It's not as if we even wait for them. It's an MMIO write which
can complete later.

-- 
dwmw2

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to