qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] Re: AIO ide patch
  2004-05-25 16:32 [Qemu-devel] " Vladimir N. Oleynik
@ 2004-05-26 11:03 ` Vladimir N. Oleynik
  2004-05-26 14:39   ` Hetz Ben Hamo
  2004-05-26 20:03   ` Fabrice Bellard
  0 siblings, 2 replies; 7+ messages in thread
From: Vladimir N. Oleynik @ 2004-05-26 11:03 UTC (permalink / raw)
  To: Vladimir N. Oleynik; +Cc: qemu-devel

I wrote:

> Hi Fabrice!
> 
> I have tried to make a variant with asynchronous input/output
> for ide. First worked patch attached.
> (this variant haven`t AIO for ATAPI, only ATA).
> May be not full right, but ...

Good news: with this second variant patch installation w2k is full true
and don`t make disk full!
 From second variant I moved set_irq() to thread.
But, I don`t know: this save or not, but all my test cleans.


--w
vodz

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Re: AIO ide patch
  2004-05-26 14:39   ` Hetz Ben Hamo
@ 2004-05-26 14:09     ` Vladimir N. Oleynik
  2004-05-30 14:30       ` Hetz Ben Hamo
  0 siblings, 1 reply; 7+ messages in thread
From: Vladimir N. Oleynik @ 2004-05-26 14:09 UTC (permalink / raw)
  To: Hetz Ben Hamo; +Cc: qemu-devel

Hetz,

>> Good news: with this second variant patch installation w2k is full true
>> and don`t make disk full!
>>  From second variant I moved set_irq() to thread.
>> But, I don`t know: this save or not, but all my test cleans.

> And where is the patch? :)

I want see Fabrice a reaction. I don`t know of safe my idea.
I tested 3-th variant with AIO for ATAPI. My tests is works.


ftp://ftp.simtreas.ru/pub/my/qemu/qemu_aio.patch3.gz


--w
vodz

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Re: AIO ide patch
  2004-05-26 11:03 ` [Qemu-devel] " Vladimir N. Oleynik
@ 2004-05-26 14:39   ` Hetz Ben Hamo
  2004-05-26 14:09     ` Vladimir N. Oleynik
  2004-05-26 20:03   ` Fabrice Bellard
  1 sibling, 1 reply; 7+ messages in thread
From: Hetz Ben Hamo @ 2004-05-26 14:39 UTC (permalink / raw)
  To: qemu-devel; +Cc: Vladimir N. Oleynik

> Good news: with this second variant patch installation w2k is full true
> and don`t make disk full!
>  From second variant I moved set_irq() to thread.
> But, I don`t know: this save or not, but all my test cleans.

And where is the patch? :)

Thanks,
Hetz

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Qemu-devel] Re: AIO ide patch
  2004-05-26 11:03 ` [Qemu-devel] " Vladimir N. Oleynik
  2004-05-26 14:39   ` Hetz Ben Hamo
@ 2004-05-26 20:03   ` Fabrice Bellard
  1 sibling, 0 replies; 7+ messages in thread
From: Fabrice Bellard @ 2004-05-26 20:03 UTC (permalink / raw)
  To: Vladimir N. Oleynik; +Cc: qemu-devel

Vladimir N. Oleynik wrote:
> I wrote:
> 
>> Hi Fabrice!
>>
>> I have tried to make a variant with asynchronous input/output
>> for ide. First worked patch attached.
>> (this variant haven`t AIO for ATAPI, only ATA).
>> May be not full right, but ...
> 
> 
> Good news: with this second variant patch installation w2k is full true
> and don`t make disk full!
>  From second variant I moved set_irq() to thread.
> But, I don`t know: this save or not, but all my test cleans.

The disk dull problem is timing dependent. Your patches change the 
timings, but there is no proof they really fixed the bug. Of course it 
is possible that Win2K has a bug which makes the IDE driver timing 
dependent...

Fabrice.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Qemu-devel] Re: AIO ide patch
@ 2004-05-28 16:10 Vladimir N. Oleynik
  0 siblings, 0 replies; 7+ messages in thread
From: Vladimir N. Oleynik @ 2004-05-28 16:10 UTC (permalink / raw)
  To: fabrice, qemu-devel

Fabrice,

 >> I have tried to make a variant with asynchronous input/output
 >> for ide. First worked patch attached.
 >> (this variant haven`t AIO for ATAPI, only ATA).
 >> May be not full right, but ...

 >> Good news: with this second variant patch installation w2k is full true
 >> and don`t make disk full!
 >> From second variant I moved set_irq() to thread.
 >> But, I don`t know: this save or not, but all my test cleans.

 > The disk dull problem is timing dependent.

Yes.

 > Your patches change
 > the timings, but there is no proof they really fixed the bug.

I can`t patch W2k ;-)

 > Of course it is possible that Win2K has a bug which makes
 > the IDE driver timing dependent...

My idea is not patch timing. My idea is async IO for make speed up
(guest CPU continued after host`s disk/network/sound make IO processing).

If set_pic_irq() is tread safe, I can generate more other async IO
(floppy, DMA, sound, network fd poll)...


--w
vodz

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Re: AIO ide patch
  2004-05-26 14:09     ` Vladimir N. Oleynik
@ 2004-05-30 14:30       ` Hetz Ben Hamo
  2004-05-31  6:39         ` Vladimir N. Oleynik
  0 siblings, 1 reply; 7+ messages in thread
From: Hetz Ben Hamo @ 2004-05-30 14:30 UTC (permalink / raw)
  To: Vladimir N. Oleynik; +Cc: qemu-devel

> I want see Fabrice a reaction. I don`t know of safe my idea.
> I tested 3-th variant with AIO for ATAPI. My tests is works.
>
>
> ftp://ftp.simtreas.ru/pub/my/qemu/qemu_aio.patch3.gz

Well, safe  - it's not :(

It seems that with your patch, Windows XP upon booting complains about wrong 
HAL, and doesn't boot. Windows 98 complains about corrupt hard drive and 
doesn't boot either.

With your patch applied - do I need to re-install the guest OS?

Thanks,
Hetz

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [Qemu-devel] Re: AIO ide patch
  2004-05-30 14:30       ` Hetz Ben Hamo
@ 2004-05-31  6:39         ` Vladimir N. Oleynik
  0 siblings, 0 replies; 7+ messages in thread
From: Vladimir N. Oleynik @ 2004-05-31  6:39 UTC (permalink / raw)
  To: hetz; +Cc: qemu-devel

Hetz,

>>I want see Fabrice a reaction. I don`t know of safe my idea.
>>I tested 3-th variant with AIO for ATAPI. My tests is works.
>>
>>
>>ftp://ftp.simtreas.ru/pub/my/qemu/qemu_aio.patch3.gz

> Well, safe  - it's not :(

May be. Qemu have comment for demontsrate this ;-)

/* XXX: tb_flush is currently not thread safe */
....
     if (cpu_single_env)
         env = cpu_single_env; /* XXX: find a correct solution for multithread */

And many other...

Current cpu_single_env=global_env and cpu_loop() have save context by localy,
not to env. io_port make irq from signle_env, mail_loop() make timer irq from
global_env, network fd_read make irq from mail_loop() with single_env...
I confused this. The current design may be ready not thread safe, but have
working progress for this.

> It seems that with your patch, Windows XP upon booting complains about wrong 
> HAL, and doesn't boot. Windows 98 complains about corrupt hard drive and 
> doesn't boot either.

Heh. My WinXP installation with AIO_patch4v is ok.
4v have async call all set_irq with usage sched_yield().

--w
vodz

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2004-05-31  6:38 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-28 16:10 [Qemu-devel] Re: AIO ide patch Vladimir N. Oleynik
  -- strict thread matches above, loose matches on Subject: below --
2004-05-25 16:32 [Qemu-devel] " Vladimir N. Oleynik
2004-05-26 11:03 ` [Qemu-devel] " Vladimir N. Oleynik
2004-05-26 14:39   ` Hetz Ben Hamo
2004-05-26 14:09     ` Vladimir N. Oleynik
2004-05-30 14:30       ` Hetz Ben Hamo
2004-05-31  6:39         ` Vladimir N. Oleynik
2004-05-26 20:03   ` Fabrice Bellard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).