qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v2] hw/scsi/lsi53c895a: add timer to scripts processing


From: Peter Maydell
Subject: Re: [PATCH v2] hw/scsi/lsi53c895a: add timer to scripts processing
Date: Mon, 4 Mar 2024 15:08:37 +0000

On Thu, 29 Feb 2024 at 20:44, Sven Schnelle <svens@stackframe.org> wrote:
>
> HP-UX 10.20 seems to make the lsi53c895a spinning on a memory location
> under certain circumstances. As the SCSI controller and CPU are not
> running at the same time this loop will never finish. After some
> time, the check loop interrupts with a unexpected device disconnect.
> This works, but is slow because the kernel resets the scsi controller.
> Instead of signaling UDC, start a timer and exit the loop. Until the
> timer fires, the CPU can process instructions which might changes the
> memory location.
>
> The limit of instructions is also reduced because scripts running on
> the SCSI processor are usually very short. This keeps the time until
> the loop is exit short.

"exited"

>
> Suggested-by: Peter Maydell <peter.maydell@linaro.org>
> Signed-off-by: Sven Schnelle <svens@stackframe.org>
> ---
> Changes in v2:
> - update comment in lsi_execute_script()
> - reset waiting state and del timer in lsi_execute_script() to
>   handle the case where script processing is triggered via
>   register write, and not from the pending timer
> - delete timer in lsi_scsi_exit()

Other than the s/host/guest/ comment fix,
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

I don't suppose anybody has a setup with the Windows drivers
to test this on? (commit ee4d919f30f13 suggests that at least
Windows XP and 2003 had this problem.)

thanks
-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]