25.12.2013 18:17, David du Colombier wrote:
> This notably fix IDE CD probing on the Plan 9 operating system,
> which rely on the error register set by the Execute Device
> Diagnostic command to detect drive configurations.

While this is a one-liner, I'm not sure it is "trivial enough", just because
it is not at all obvious we shuold clear error here and not somewhere else.
I mean, shouldn't s->error be cleared somewhere when next request is queued,
or something like that?

That's basically why I haven't applied this initially.

CC'ing qemu-devel.

Thanks,

/mjt

> Thanks to Rémi Pommarel for reporting this issue.
> 
> Signed-off-by: David du Colombier <0in...@gmail.com>
> ---
>  hw/ide/core.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/hw/ide/core.c b/hw/ide/core.c
> index e1f4c33..7783d58 100644
> --- a/hw/ide/core.c
> +++ b/hw/ide/core.c
> @@ -1321,6 +1321,7 @@ static bool cmd_exec_dev_diagnostic(IDEState *s, 
> uint8_t cmd)
>          s->status = 0; /* ATAPI spec (v6) section 9.10 defines packet
>                          * devices to return a clear status register
>                          * with READY_STAT *not* set. */
> +        s->error = 0x01;
>      } else {
>          s->status = READY_STAT | SEEK_STAT;
>          /* The bits of the error register are not as usual for this command!
> 


Reply via email to