All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
To: "Philippe Mathieu-Daudé" <philmd@redhat.com>,
	qemu-devel@nongnu.org, qemu-ppc@nongnu.org,
	david@gibson.dropbear.id.au, hsp.cat7@gmail.com
Subject: Re: [Qemu-devel] [PATCH] cuda: decrease time delay before raising VIA SR interrupt
Date: Tue, 12 Feb 2019 06:59:58 +0000	[thread overview]
Message-ID: <28a8cd58-51a9-6301-1d25-02289af8c81d@ilande.co.uk> (raw)
In-Reply-To: <442139a2-5ab2-9259-03a0-11d2f3c86c59@redhat.com>

On 11/02/2019 23:35, Philippe Mathieu-Daudé wrote:

> Hi Mark,
> 
> On 2/10/19 6:44 PM, Mark Cave-Ayland wrote:
>> In order to handle a race condition in MacOS 9, a delay was introduced when
>> raising the VIA SR interrupt inspired by similar code in MacOnLinux.
>>
>> During original testing of the MacOS 9 patches it was found that the 30us
>> delay used in MacOnLinux did not work reliably within QEMU, and a value of
>> 300us was required to function correctly.
>>
>> Recent experiments have shown that the previous reliability issues are no
>> longer present, and this value can be reduced down to 20us with no apparent
>> ill effects in my local tests. This has the benefit of considerably improving
>> the responsiveness of the ADB keyboard and mouse with the guest.
>>
>> Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
>> ---
>>  hw/misc/macio/cuda.c | 11 +----------
>>  1 file changed, 1 insertion(+), 10 deletions(-)
>>
>> diff --git a/hw/misc/macio/cuda.c b/hw/misc/macio/cuda.c
>> index c4f7a2f39b..3febacdd1e 100644
>> --- a/hw/misc/macio/cuda.c
>> +++ b/hw/misc/macio/cuda.c
>> @@ -97,17 +97,8 @@ static void cuda_set_sr_int(void *opaque)
>>  
>>  static void cuda_delay_set_sr_int(CUDAState *s)
>>  {
>> -    MOS6522CUDAState *mcs = &s->mos6522_cuda;
>> -    MOS6522State *ms = MOS6522(mcs);
>> -    MOS6522DeviceClass *mdc = MOS6522_DEVICE_GET_CLASS(ms);
>>      int64_t expire;
>>  
>> -    if (ms->dirb == 0xff || s->sr_delay_ns == 0) {
>> -        /* Disabled or not in Mac OS, fire the IRQ directly */
>> -        mdc->set_sr_int(ms);
>> -        return;
>> -    }
> 
> The change of sr_delay_ns below is well explained, but I don't
> understand why you remove the previous if().

IIRC it was a hack by Alex to try and restrict the delay on the interrupt just to
MacOS instead of Linux, but with the reduced value it doesn't really matter any more.
As a plus it also prevents a guest OS from accidentally triggering the hack whilst
programming the VIA port.


ATB,

Mark.

  reply	other threads:[~2019-02-12  7:01 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-02-10 17:44 [Qemu-devel] [PATCH] cuda: decrease time delay before raising VIA SR interrupt Mark Cave-Ayland
2019-02-10 23:16 ` David Gibson
2019-02-11 23:35 ` Philippe Mathieu-Daudé
2019-02-12  6:59   ` Mark Cave-Ayland [this message]
2019-02-12 11:03     ` [Qemu-devel] [Qemu-ppc] " BALATON Zoltan
2019-02-12 16:51       ` Mark Cave-Ayland
2019-02-12 17:21         ` Philippe Mathieu-Daudé
2019-02-12 17:50           ` Mark Cave-Ayland
2019-02-12 18:21             ` Philippe Mathieu-Daudé
2019-02-12 20:01               ` Mark Cave-Ayland
2019-02-13  0:21                 ` David Gibson
2019-02-13  7:08                   ` Mark Cave-Ayland

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=28a8cd58-51a9-6301-1d25-02289af8c81d@ilande.co.uk \
    --to=mark.cave-ayland@ilande.co.uk \
    --cc=david@gibson.dropbear.id.au \
    --cc=hsp.cat7@gmail.com \
    --cc=philmd@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-ppc@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.