Hi Dave,

> On 3 Jul 2021, at 19:08, Matthias Schmidt <[email protected]> wrote:
> 
> Hi Dave,
> 
> * Dave Voutila wrote:
>> Looking for some broader testing of the following diff. It cleans up
>> some complicated logic predominantly left over from the early days of
>> vmd prior to its having a dedicated device thread.
>> 
>> In summary, this diff:
>> 
>> - Removes vionet "rx pending" state handling and removes the code path
>>  for the vcpu thread to possibly take control of the virtio net device
>>  and attempt a read of the underlying tap(4). (virtio.{c,h}, vm.c)
>> 
>> - Removes ns8250 "rcv pending" state handling and removes the code path
>>  for the vcpu thread to read the pty via com_rcv(). (ns8250.{c,h})
>> 
>> In both of the above cases, the event handling thread will be notified
>> of readable data and deal with it.
>> 
>> Why remove them? The logic is overly complicated and hard to reason
>> about for zero gain. (This diff results in no intended functional
>> change.) Plus, some of the above logic I helped add to deal with the
>> race conditions and state corruption over a year ago. The logic was
>> needed once upon a time, but shouldn't be needed at present.
>> 
>> I've had positive testing feedback from abieber@ so far with at least
>> the ns8250/uart diff, but want to cast a broader net here with both
>> before either part is committed. I debated splitting these up, but
>> they're thematically related.
> 
> I have the diff running since one week on -current with stable/current
> and an Archlinux guest and have noticed no regression so far.
> 
> Cheers
> 
>       Matthias

No issues on my side as well.

Mischa

Reply via email to