Thread: [ES40-developers] CDROM issue
Status: Alpha
Brought to you by:
iamcamiel
From: Fausto S. <fa...@un...> - 2008-03-18 11:31:49
|
Hello Brial et all, just for your info, with the latest cvs I have always a crash during a cdrom mount, with the same error: Exception in CPU thread: Threading error: Locking error (Timeout: c:\users\p\es4 0\src\Lock.h, line 581) trying to read-lock mutex ide1-registers from thread cpu 0. : c:\users\p\es40\src\Lock.h, line 587. regards, fausto PS with file is ok. |
From: Fausto S. <fa...@un...> - 2008-03-18 11:37:24
|
Hello all, I have to fix my previous post. I have the same error with a "file", not only with "device". regards, fausto Quoting Fausto Saporito <fa...@un...>: > Hello Brial et all, > > just for your info, with the latest cvs I have always a crash during a > cdrom mount, with the same error: > > Exception in CPU thread: Threading error: Locking error (Timeout: > c:\users\p\es4 > 0\src\Lock.h, line 581) trying to read-lock mutex ide1-registers from > thread cpu > 0. > : c:\users\p\es40\src\Lock.h, line 587. > > regards, > fausto > > PS > with file is ok. > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > |
From: Camiel V. <iam...@gm...> - 2008-03-18 12:13:53
|
Brian, I think you're the one who understands the ATAPI state engine best; could there be a point where the ATAPI engine is waiting for something from the CPU, while keeping the registers mutex write-locked? Camiel. On Tue, Mar 18, 2008 at 12:36 PM, Fausto Saporito <fa...@un...> wrote: > Hello all, > > I have to fix my previous post. > > I have the same error with a "file", not only with "device". > > regards, > fausto > > > > Quoting Fausto Saporito <fa...@un...>: > > > Hello Brial et all, > > > > just for your info, with the latest cvs I have always a crash during a > > cdrom mount, with the same error: > > > > Exception in CPU thread: Threading error: Locking error (Timeout: > > c:\users\p\es4 > > 0\src\Lock.h, line 581) trying to read-lock mutex ide1-registers from > > thread cpu > > 0. > > : c:\users\p\es40\src\Lock.h, line 587. > > > > regards, > > fausto > > > > PS > > with file is ok. > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Es40-developers mailing list > > Es4...@li... > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > |
From: Brian W. <bdw...@in...> - 2008-03-18 13:55:25
Attachments:
lock_fixes.diff
|
Yes, that's exactly what's happening -- I write lock the registers prior to the execute() call, and since the read from cdrom takes so long, the lock times out. If anyone is knowledgeable about the workings of IDE, let me know if this makes sense: The alternate status register seems to be a semaphore in some respects: the host polls it to determine the 'busy' and 'drq' status to decide when to read/write from/to the rest of the registers. When busy (and/or drq) are asserted, the ide thread should have shut down so there won't be any contention with the cpu thread. So I did a couple of things: * removed all of the general register locking. * busmaster locking is still in place, but it might not be needed. This locking is pretty fine grained so nothing should time out waiting for it. * created an alt_status variable which gets updated when the real status becomes stable (i.e. at the end of the execute() run, after the drq status is changed, etc) Access to this variable is locked. * everything else is a free for all. This patch implements that methodology as well as an optional delayed interrupt. The OSes still lose interrupts sometimes and ATAPI is busted something fierce. If anyone wants to take a shot at it, feel free. I've been looking at it long enough that I'm out of ideas as to what is going wrong. Brian On Tue, 2008-03-18 at 13:13 +0100, Camiel Vanderhoeven wrote: > Brian, > > I think you're the one who understands the ATAPI state engine best; > could there be a point where the ATAPI engine is waiting for something > from the CPU, while keeping the registers mutex write-locked? > > Camiel. > > On Tue, Mar 18, 2008 at 12:36 PM, Fausto Saporito <fa...@un...> wrote: > > Hello all, > > > > I have to fix my previous post. > > > > I have the same error with a "file", not only with "device". > > > > regards, > > fausto > > > > > > > > Quoting Fausto Saporito <fa...@un...>: > > > > > Hello Brial et all, > > > > > > just for your info, with the latest cvs I have always a crash during a > > > cdrom mount, with the same error: > > > > > > Exception in CPU thread: Threading error: Locking error (Timeout: > > > c:\users\p\es4 > > > 0\src\Lock.h, line 581) trying to read-lock mutex ide1-registers from > > > thread cpu > > > 0. > > > : c:\users\p\es40\src\Lock.h, line 587. > > > > > > regards, > > > fausto > > > > > > PS > > > with file is ok. > > > > > > ------------------------------------------------------------------------- > > > This SF.net email is sponsored by: Microsoft > > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > _______________________________________________ > > > Es40-developers mailing list > > > Es4...@li... > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Es40-developers mailing list > > Es4...@li... > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers |
From: Camiel V. <iam...@gm...> - 2008-03-20 11:56:17
|
Hello, I committed this to the repository. Also new is a new set of configuration files for Automake and friends. This means that on Linux, BSD or UNIX'es, you can simply run ./configure followed by make to build the emulator. If you run into any kind of trouble with this, please let me know, and I'll try to resolve them, Camiel. On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler <bdw...@in...> wrote: > Yes, that's exactly what's happening -- I write lock the registers prior > to the execute() call, and since the read from cdrom takes so long, the > lock times out. > > If anyone is knowledgeable about the workings of IDE, let me know if > this makes sense: > > The alternate status register seems to be a semaphore in some respects: > the host polls it to determine the 'busy' and 'drq' status to decide > when to read/write from/to the rest of the registers. When busy (and/or > drq) are asserted, the ide thread should have shut down so there won't > be any contention with the cpu thread. > > So I did a couple of things: > * removed all of the general register locking. > * busmaster locking is still in place, but it might not be needed. This > locking is pretty fine grained so nothing should time out waiting for > it. > * created an alt_status variable which gets updated when the real status > becomes stable (i.e. at the end of the execute() run, after the drq > status is changed, etc) Access to this variable is locked. > * everything else is a free for all. > > This patch implements that methodology as well as an optional delayed > interrupt. The OSes still lose interrupts sometimes and ATAPI is busted > something fierce. If anyone wants to take a shot at it, feel free. I've > been looking at it long enough that I'm out of ideas as to what is going > wrong. > > Brian > > > > > > > On Tue, 2008-03-18 at 13:13 +0100, Camiel Vanderhoeven wrote: > > Brian, > > > > I think you're the one who understands the ATAPI state engine best; > > could there be a point where the ATAPI engine is waiting for something > > from the CPU, while keeping the registers mutex write-locked? > > > > Camiel. > > > > On Tue, Mar 18, 2008 at 12:36 PM, Fausto Saporito <fa...@un...> wrote: > > > Hello all, > > > > > > I have to fix my previous post. > > > > > > I have the same error with a "file", not only with "device". > > > > > > regards, > > > fausto > > > > > > > > > > > > Quoting Fausto Saporito <fa...@un...>: > > > > > > > Hello Brial et all, > > > > > > > > just for your info, with the latest cvs I have always a crash during a > > > > cdrom mount, with the same error: > > > > > > > > Exception in CPU thread: Threading error: Locking error (Timeout: > > > > c:\users\p\es4 > > > > 0\src\Lock.h, line 581) trying to read-lock mutex ide1-registers from > > > > thread cpu > > > > 0. > > > > : c:\users\p\es40\src\Lock.h, line 587. > > > > > > > > regards, > > > > fausto > > > > > > > > PS > > > > with file is ok. > > > > > > > > ------------------------------------------------------------------------- > > > > This SF.net email is sponsored by: Microsoft > > > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > _______________________________________________ > > > > Es40-developers mailing list > > > > Es4...@li... > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > This SF.net email is sponsored by: Microsoft > > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > _______________________________________________ > > > Es40-developers mailing list > > > Es4...@li... > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Es40-developers mailing list > > Es4...@li... > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > > |
From: Pepito G. <pep...@ya...> - 2008-03-20 16:12:39
|
Hi What is the new procedure for building es40? I can't find configure file. Thanks Pepito --- Camiel Vanderhoeven <iam...@gm...> escribió: > Hello, > > I committed this to the repository. Also new is a > new set of > configuration files for Automake and friends. This > means that on > Linux, BSD or UNIX'es, you can simply run > ./configure followed by make > to build the emulator. If you run into any kind of > trouble with this, > please let me know, and I'll try to resolve them, > > Camiel. > > On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler > <bdw...@in...> wrote: > > Yes, that's exactly what's happening -- I write > lock the registers prior > > to the execute() call, and since the read from > cdrom takes so long, the > > lock times out. > > > > If anyone is knowledgeable about the workings of > IDE, let me know if > > this makes sense: > > > > The alternate status register seems to be a > semaphore in some respects: > > the host polls it to determine the 'busy' and > 'drq' status to decide > > when to read/write from/to the rest of the > registers. When busy (and/or > > drq) are asserted, the ide thread should have > shut down so there won't > > be any contention with the cpu thread. > > > > So I did a couple of things: > > * removed all of the general register locking. > > * busmaster locking is still in place, but it > might not be needed. This > > locking is pretty fine grained so nothing should > time out waiting for > > it. > > * created an alt_status variable which gets > updated when the real status > > becomes stable (i.e. at the end of the execute() > run, after the drq > > status is changed, etc) Access to this variable > is locked. > > * everything else is a free for all. > > > > This patch implements that methodology as well as > an optional delayed > > interrupt. The OSes still lose interrupts > sometimes and ATAPI is busted > > something fierce. If anyone wants to take a shot > at it, feel free. I've > > been looking at it long enough that I'm out of > ideas as to what is going > > wrong. > > > > Brian > > > > > > > > > > > > > > On Tue, 2008-03-18 at 13:13 +0100, Camiel > Vanderhoeven wrote: > > > Brian, > > > > > > I think you're the one who understands the > ATAPI state engine best; > > > could there be a point where the ATAPI engine > is waiting for something > > > from the CPU, while keeping the registers mutex > write-locked? > > > > > > Camiel. > > > > > > On Tue, Mar 18, 2008 at 12:36 PM, Fausto > Saporito <fa...@un...> wrote: > > > > Hello all, > > > > > > > > I have to fix my previous post. > > > > > > > > I have the same error with a "file", not > only with "device". > > > > > > > > regards, > > > > fausto > > > > > > > > > > > > > > > > Quoting Fausto Saporito <fa...@un...>: > > > > > > > > > Hello Brial et all, > > > > > > > > > > just for your info, with the latest cvs I > have always a crash during a > > > > > cdrom mount, with the same error: > > > > > > > > > > Exception in CPU thread: Threading error: > Locking error (Timeout: > > > > > c:\users\p\es4 > > > > > 0\src\Lock.h, line 581) trying to > read-lock mutex ide1-registers from > > > > > thread cpu > > > > > 0. > > > > > : c:\users\p\es40\src\Lock.h, line 587. > > > > > > > > > > regards, > > > > > fausto > > > > > > > > > > PS > > > > > with file is ok. > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > This SF.net email is sponsored by: > Microsoft > > > > > Defy all challenges. Microsoft(R) Visual > Studio 2008. > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > _______________________________________________ > > > > > Es40-developers mailing list > > > > > Es4...@li... > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > This SF.net email is sponsored by: Microsoft > > > > Defy all challenges. Microsoft(R) Visual > Studio 2008. > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > _______________________________________________ > > > > Es40-developers mailing list > > > > Es4...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > ------------------------------------------------------------------------- > > > This SF.net email is sponsored by: Microsoft > > > Defy all challenges. Microsoft(R) Visual Studio > 2008. > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > _______________________________________________ > > > Es40-developers mailing list > > > Es4...@li... > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio > 2008. > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Es40-developers mailing list > > Es4...@li... > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio > 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > ______________________________________________ Enviado desde Correo Yahoo! Más formas de estar en contacto. http://es.docs.yahoo.com/mail/overview/index.html |
From: Camiel V. <iam...@gm...> - 2008-03-20 16:48:16
|
Hi Pepito, It's in the top-level directory (not in src) Camiel. On Thu, Mar 20, 2008 at 5:11 PM, Pepito Grillo <pep...@ya...> wrote: > Hi > What is the new procedure for building es40? > I can't find configure file. > > Thanks > > Pepito > > > > --- Camiel Vanderhoeven <iam...@gm...> > escribió: > > > > > Hello, > > > > I committed this to the repository. Also new is a > > new set of > > configuration files for Automake and friends. This > > means that on > > Linux, BSD or UNIX'es, you can simply run > > ./configure followed by make > > to build the emulator. If you run into any kind of > > trouble with this, > > please let me know, and I'll try to resolve them, > > > > Camiel. > > > > On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler > > <bdw...@in...> wrote: > > > Yes, that's exactly what's happening -- I write > > lock the registers prior > > > to the execute() call, and since the read from > > cdrom takes so long, the > > > lock times out. > > > > > > If anyone is knowledgeable about the workings of > > IDE, let me know if > > > this makes sense: > > > > > > The alternate status register seems to be a > > semaphore in some respects: > > > the host polls it to determine the 'busy' and > > 'drq' status to decide > > > when to read/write from/to the rest of the > > registers. When busy (and/or > > > drq) are asserted, the ide thread should have > > shut down so there won't > > > be any contention with the cpu thread. > > > > > > So I did a couple of things: > > > * removed all of the general register locking. > > > * busmaster locking is still in place, but it > > might not be needed. This > > > locking is pretty fine grained so nothing should > > time out waiting for > > > it. > > > * created an alt_status variable which gets > > updated when the real status > > > becomes stable (i.e. at the end of the execute() > > run, after the drq > > > status is changed, etc) Access to this variable > > is locked. > > > * everything else is a free for all. > > > > > > This patch implements that methodology as well as > > an optional delayed > > > interrupt. The OSes still lose interrupts > > sometimes and ATAPI is busted > > > something fierce. If anyone wants to take a shot > > at it, feel free. I've > > > been looking at it long enough that I'm out of > > ideas as to what is going > > > wrong. > > > > > > Brian > > > > > > > > > > > > > > > > > > > > > On Tue, 2008-03-18 at 13:13 +0100, Camiel > > Vanderhoeven wrote: > > > > Brian, > > > > > > > > I think you're the one who understands the > > ATAPI state engine best; > > > > could there be a point where the ATAPI engine > > is waiting for something > > > > from the CPU, while keeping the registers mutex > > write-locked? > > > > > > > > Camiel. > > > > > > > > On Tue, Mar 18, 2008 at 12:36 PM, Fausto > > Saporito <fa...@un...> wrote: > > > > > Hello all, > > > > > > > > > > I have to fix my previous post. > > > > > > > > > > I have the same error with a "file", not > > only with "device". > > > > > > > > > > regards, > > > > > fausto > > > > > > > > > > > > > > > > > > > > Quoting Fausto Saporito <fa...@un...>: > > > > > > > > > > > Hello Brial et all, > > > > > > > > > > > > just for your info, with the latest cvs I > > have always a crash during a > > > > > > cdrom mount, with the same error: > > > > > > > > > > > > Exception in CPU thread: Threading error: > > Locking error (Timeout: > > > > > > c:\users\p\es4 > > > > > > 0\src\Lock.h, line 581) trying to > > read-lock mutex ide1-registers from > > > > > > thread cpu > > > > > > 0. > > > > > > : c:\users\p\es40\src\Lock.h, line 587. > > > > > > > > > > > > regards, > > > > > > fausto > > > > > > > > > > > > PS > > > > > > with file is ok. > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > This SF.net email is sponsored by: > > Microsoft > > > > > > Defy all challenges. Microsoft(R) Visual > > Studio 2008. > > > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > > > _______________________________________________ > > > > > > Es40-developers mailing list > > > > > > Es4...@li... > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > This SF.net email is sponsored by: Microsoft > > > > > Defy all challenges. Microsoft(R) Visual > > Studio 2008. > > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > > _______________________________________________ > > > > > Es40-developers mailing list > > > > > Es4...@li... > > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > This SF.net email is sponsored by: Microsoft > > > > Defy all challenges. Microsoft(R) Visual Studio > > 2008. > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > _______________________________________________ > > > > Es40-developers mailing list > > > > Es4...@li... > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > ------------------------------------------------------------------------- > > > This SF.net email is sponsored by: Microsoft > > > Defy all challenges. Microsoft(R) Visual Studio > > 2008. > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > _______________________________________________ > > > Es40-developers mailing list > > > Es4...@li... > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio > > 2008. > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Es40-developers mailing list > > Es4...@li... > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > ______________________________________________ > Enviado desde Correo Yahoo! > Más formas de estar en contacto. http://es.docs.yahoo.com/mail/overview/index.html > > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > |
From: Paco L. <pac...@gm...> - 2008-03-20 16:48:37
|
Hi: Pepito, I have a configure, but I had to make: chmod +x configure checking for strspn... yes configure: creating ./config.status config.status: creating Makefile config.status: error: cannot find input file: doc/Makefile.in paco@javier:~/es40$ Paco On Thu, Mar 20, 2008 at 12:56 PM, Camiel Vanderhoeven <iam...@gm...> wrote: > Hello, > > I committed this to the repository. Also new is a new set of > configuration files for Automake and friends. This means that on > Linux, BSD or UNIX'es, you can simply run ./configure followed by make > to build the emulator. If you run into any kind of trouble with this, > please let me know, and I'll try to resolve them, > > Camiel. > > On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler <bdw...@in...> > wrote: > > Yes, that's exactly what's happening -- I write lock the registers prior > > to the execute() call, and since the read from cdrom takes so long, > the > > lock times out. > > > > If anyone is knowledgeable about the workings of IDE, let me know if > > this makes sense: > > > > The alternate status register seems to be a semaphore in some respects: > > the host polls it to determine the 'busy' and 'drq' status to decide > > when to read/write from/to the rest of the registers. When busy > (and/or > > drq) are asserted, the ide thread should have shut down so there won't > > be any contention with the cpu thread. > > > > So I did a couple of things: > > * removed all of the general register locking. > > * busmaster locking is still in place, but it might not be needed. > This > > locking is pretty fine grained so nothing should time out waiting for > > it. > > * created an alt_status variable which gets updated when the real > status > > becomes stable (i.e. at the end of the execute() run, after the drq > > status is changed, etc) Access to this variable is locked. > > * everything else is a free for all. > > > > This patch implements that methodology as well as an optional delayed > > interrupt. The OSes still lose interrupts sometimes and ATAPI is > busted > > something fierce. If anyone wants to take a shot at it, feel free. > I've > > been looking at it long enough that I'm out of ideas as to what is > going > > wrong. > > > > Brian > > > > > > > > > > > > > > On Tue, 2008-03-18 at 13:13 +0100, Camiel Vanderhoeven wrote: > > > Brian, > > > > > > I think you're the one who understands the ATAPI state engine best; > > > could there be a point where the ATAPI engine is waiting for > something > > > from the CPU, while keeping the registers mutex write-locked? > > > > > > Camiel. > > > > > > On Tue, Mar 18, 2008 at 12:36 PM, Fausto Saporito <fa...@un...> > wrote: > > > > Hello all, > > > > > > > > I have to fix my previous post. > > > > > > > > I have the same error with a "file", not only with "device". > > > > > > > > regards, > > > > fausto > > > > > > > > > > > > > > > > Quoting Fausto Saporito <fa...@un...>: > > > > > > > > > Hello Brial et all, > > > > > > > > > > just for your info, with the latest cvs I have always a crash > during a > > > > > cdrom mount, with the same error: > > > > > > > > > > Exception in CPU thread: Threading error: Locking error > (Timeout: > > > > > c:\users\p\es4 > > > > > 0\src\Lock.h, line 581) trying to read-lock mutex ide1-registers > from > > > > > thread cpu > > > > > 0. > > > > > : c:\users\p\es40\src\Lock.h, line 587. > > > > > > > > > > regards, > > > > > fausto > > > > > > > > > > PS > > > > > with file is ok. > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > This SF.net email is sponsored by: Microsoft > > > > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > _______________________________________________ > > > > > Es40-developers mailing list > > > > > Es4...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > This SF.net email is sponsored by: Microsoft > > > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > _______________________________________________ > > > > Es40-developers mailing list > > > > Es4...@li... > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > ------------------------------------------------------------------------- > > > This SF.net email is sponsored by: Microsoft > > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > _______________________________________________ > > > Es40-developers mailing list > > > Es4...@li... > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Es40-developers mailing list > > Es4...@li... > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > |
From: Pepito G. <pep...@ya...> - 2008-03-20 16:55:36
|
Hi! I have a little problem with configure: .... checking for strspn... yes configure: creating ./config.status config.status: creating Makefile config.status: error: cannot find input file: doc/Makefile.in Pepito --- Paco Linux <pac...@gm...> escribió: > Hi: > > Pepito, I have a configure, but I had to make: chmod > +x configure > > checking for strspn... yes > configure: creating ./config.status > config.status: creating Makefile > config.status: error: cannot find input file: > doc/Makefile.in > paco@javier:~/es40$ > > Paco > > > On Thu, Mar 20, 2008 at 12:56 PM, Camiel > Vanderhoeven <iam...@gm...> > wrote: > > > Hello, > > > > I committed this to the repository. Also new is a > new set of > > configuration files for Automake and friends. This > means that on > > Linux, BSD or UNIX'es, you can simply run > ./configure followed by make > > to build the emulator. If you run into any kind of > trouble with this, > > please let me know, and I'll try to resolve them, > > > > Camiel. > > > > On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler > <bdw...@in...> > > wrote: > > > Yes, that's exactly what's happening -- I write > lock the registers prior > > > to the execute() call, and since the read from > cdrom takes so long, > > the > > > lock times out. > > > > > > If anyone is knowledgeable about the workings > of IDE, let me know if > > > this makes sense: > > > > > > The alternate status register seems to be a > semaphore in some respects: > > > the host polls it to determine the 'busy' and > 'drq' status to decide > > > when to read/write from/to the rest of the > registers. When busy > > (and/or > > > drq) are asserted, the ide thread should have > shut down so there won't > > > be any contention with the cpu thread. > > > > > > So I did a couple of things: > > > * removed all of the general register locking. > > > * busmaster locking is still in place, but it > might not be needed. > > This > > > locking is pretty fine grained so nothing > should time out waiting for > > > it. > > > * created an alt_status variable which gets > updated when the real > > status > > > becomes stable (i.e. at the end of the > execute() run, after the drq > > > status is changed, etc) Access to this > variable is locked. > > > * everything else is a free for all. > > > > > > This patch implements that methodology as well > as an optional delayed > > > interrupt. The OSes still lose interrupts > sometimes and ATAPI is > > busted > > > something fierce. If anyone wants to take a > shot at it, feel free. > > I've > > > been looking at it long enough that I'm out of > ideas as to what is > > going > > > wrong. > > > > > > Brian > > > > > > > > > > > > > > > > > > > > > On Tue, 2008-03-18 at 13:13 +0100, Camiel > Vanderhoeven wrote: > > > > Brian, > > > > > > > > I think you're the one who understands the > ATAPI state engine best; > > > > could there be a point where the ATAPI engine > is waiting for > > something > > > > from the CPU, while keeping the registers > mutex write-locked? > > > > > > > > Camiel. > > > > > > > > On Tue, Mar 18, 2008 at 12:36 PM, Fausto > Saporito <fa...@un...> > > wrote: > > > > > Hello all, > > > > > > > > > > I have to fix my previous post. > > > > > > > > > > I have the same error with a "file", not > only with "device". > > > > > > > > > > regards, > > > > > fausto > > > > > > > > > > > > > > > > > > > > Quoting Fausto Saporito <fa...@un...>: > > > > > > > > > > > Hello Brial et all, > > > > > > > > > > > > just for your info, with the latest cvs > I have always a crash > > during a > > > > > > cdrom mount, with the same error: > > > > > > > > > > > > Exception in CPU thread: Threading > error: Locking error > > (Timeout: > > > > > > c:\users\p\es4 > > > > > > 0\src\Lock.h, line 581) trying to > read-lock mutex ide1-registers > > from > > > > > > thread cpu > > > > > > 0. > > > > > > : c:\users\p\es40\src\Lock.h, line 587. > > > > > > > > > > > > regards, > > > > > > fausto > > > > > > > > > > > > PS > > > > > > with file is ok. > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > This SF.net email is sponsored by: > Microsoft > > > > > > Defy all challenges. Microsoft(R) Visual > Studio 2008. > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > > _______________________________________________ > > > > > > Es40-developers mailing list > > > > > > Es4...@li... > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > This SF.net email is sponsored by: > Microsoft > > > > > Defy all challenges. Microsoft(R) Visual > Studio 2008. > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > _______________________________________________ > > > > > Es40-developers mailing list > > > > > Es4...@li... > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > This SF.net email is sponsored by: Microsoft > > > > Defy all challenges. Microsoft(R) Visual > Studio 2008. > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > _______________________________________________ > > > > Es40-developers mailing list > > > > Es4...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > === message truncated ===> ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio > 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/> _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > ______________________________________________ Enviado desde Correo Yahoo! Más formas de estar en contacto. http://es.docs.yahoo.com/mail/overview/index.html |
From: Brian W. <bdw...@in...> - 2008-03-20 17:02:33
|
On Thu, 2008-03-20 at 17:55 +0100, Pepito Grillo wrote: > Hi! > I have a little problem with configure: > > .... > checking for strspn... yes > configure: creating ./config.status > config.status: creating Makefile > config.status: error: cannot find input file: > doc/Makefile.in > When you did the cvs update, did you use the -dP flags? That grabs all of the new directories (and cleans out the empty ones) Brian > Pepito > > > --- Paco Linux <pac...@gm...> escribió: > > > Hi: > > > > Pepito, I have a configure, but I had to make: chmod > > +x configure > > > > checking for strspn... yes > > configure: creating ./config.status > > config.status: creating Makefile > > config.status: error: cannot find input file: > > doc/Makefile.in > > paco@javier:~/es40$ > > > > Paco > > > > > > On Thu, Mar 20, 2008 at 12:56 PM, Camiel > > Vanderhoeven <iam...@gm...> > > wrote: > > > > > Hello, > > > > > > I committed this to the repository. Also new is a > > new set of > > > configuration files for Automake and friends. This > > means that on > > > Linux, BSD or UNIX'es, you can simply run > > ./configure followed by make > > > to build the emulator. If you run into any kind of > > trouble with this, > > > please let me know, and I'll try to resolve them, > > > > > > Camiel. > > > > > > On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler > > <bdw...@in...> > > > wrote: > > > > Yes, that's exactly what's happening -- I write > > lock the registers prior > > > > to the execute() call, and since the read from > > cdrom takes so long, > > > the > > > > lock times out. > > > > > > > > If anyone is knowledgeable about the workings > > of IDE, let me know if > > > > this makes sense: > > > > > > > > The alternate status register seems to be a > > semaphore in some respects: > > > > the host polls it to determine the 'busy' and > > 'drq' status to decide > > > > when to read/write from/to the rest of the > > registers. When busy > > > (and/or > > > > drq) are asserted, the ide thread should have > > shut down so there won't > > > > be any contention with the cpu thread. > > > > > > > > So I did a couple of things: > > > > * removed all of the general register locking. > > > > * busmaster locking is still in place, but it > > might not be needed. > > > This > > > > locking is pretty fine grained so nothing > > should time out waiting for > > > > it. > > > > * created an alt_status variable which gets > > updated when the real > > > status > > > > becomes stable (i.e. at the end of the > > execute() run, after the drq > > > > status is changed, etc) Access to this > > variable is locked. > > > > * everything else is a free for all. > > > > > > > > This patch implements that methodology as well > > as an optional delayed > > > > interrupt. The OSes still lose interrupts > > sometimes and ATAPI is > > > busted > > > > something fierce. If anyone wants to take a > > shot at it, feel free. > > > I've > > > > been looking at it long enough that I'm out of > > ideas as to what is > > > going > > > > wrong. > > > > > > > > Brian > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Tue, 2008-03-18 at 13:13 +0100, Camiel > > Vanderhoeven wrote: > > > > > Brian, > > > > > > > > > > I think you're the one who understands the > > ATAPI state engine best; > > > > > could there be a point where the ATAPI engine > > is waiting for > > > something > > > > > from the CPU, while keeping the registers > > mutex write-locked? > > > > > > > > > > Camiel. > > > > > > > > > > On Tue, Mar 18, 2008 at 12:36 PM, Fausto > > Saporito <fa...@un...> > > > wrote: > > > > > > Hello all, > > > > > > > > > > > > I have to fix my previous post. > > > > > > > > > > > > I have the same error with a "file", not > > only with "device". > > > > > > > > > > > > regards, > > > > > > fausto > > > > > > > > > > > > > > > > > > > > > > > > Quoting Fausto Saporito <fa...@un...>: > > > > > > > > > > > > > Hello Brial et all, > > > > > > > > > > > > > > just for your info, with the latest cvs > > I have always a crash > > > during a > > > > > > > cdrom mount, with the same error: > > > > > > > > > > > > > > Exception in CPU thread: Threading > > error: Locking error > > > (Timeout: > > > > > > > c:\users\p\es4 > > > > > > > 0\src\Lock.h, line 581) trying to > > read-lock mutex ide1-registers > > > from > > > > > > > thread cpu > > > > > > > 0. > > > > > > > : c:\users\p\es40\src\Lock.h, line 587. > > > > > > > > > > > > > > regards, > > > > > > > fausto > > > > > > > > > > > > > > PS > > > > > > > with file is ok. > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > > This SF.net email is sponsored by: > > Microsoft > > > > > > > Defy all challenges. Microsoft(R) Visual > > Studio 2008. > > > > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > > > > _______________________________________________ > > > > > > > Es40-developers mailing list > > > > > > > Es4...@li... > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > This SF.net email is sponsored by: > > Microsoft > > > > > > Defy all challenges. Microsoft(R) Visual > > Studio 2008. > > > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > > > _______________________________________________ > > > > > > Es40-developers mailing list > > > > > > Es4...@li... > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > This SF.net email is sponsored by: Microsoft > > > > > Defy all challenges. Microsoft(R) Visual > > Studio 2008. > > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > > _______________________________________________ > > > > > Es40-developers mailing list > > > > > Es4...@li... > > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > === message truncated ===> > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio > > 2008. > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/> > _______________________________________________ > > Es40-developers mailing list > > Es4...@li... > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > ______________________________________________ > Enviado desde Correo Yahoo! > Más formas de estar en contacto. http://es.docs.yahoo.com/mail/overview/index.html > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers |
From: Paco L. <pac...@gm...> - 2008-03-20 17:17:00
|
Hi: Problem cleared using cvs update -dP Thanks Brian. Paco On Thu, Mar 20, 2008 at 6:02 PM, Brian Wheeler <bdw...@in...> wrote: > > On Thu, 2008-03-20 at 17:55 +0100, Pepito Grillo wrote: > > Hi! > > I have a little problem with configure: > > > > .... > > checking for strspn... yes > > configure: creating ./config.status > > config.status: creating Makefile > > config.status: error: cannot find input file: > > doc/Makefile.in > > > > When you did the cvs update, did you use the -dP flags? That grabs all > of the new directories (and cleans out the empty ones) > > Brian > > > > > Pepito > > > > > > --- Paco Linux <pac...@gm...> escribió: > > > > > Hi: > > > > > > Pepito, I have a configure, but I had to make: chmod > > > +x configure > > > > > > checking for strspn... yes > > > configure: creating ./config.status > > > config.status: creating Makefile > > > config.status: error: cannot find input file: > > > doc/Makefile.in > > > paco@javier:~/es40$ > > > > > > Paco > > > > > > > > > On Thu, Mar 20, 2008 at 12:56 PM, Camiel > > > Vanderhoeven <iam...@gm...> > > > wrote: > > > > > > > Hello, > > > > > > > > I committed this to the repository. Also new is a > > > new set of > > > > configuration files for Automake and friends. This > > > means that on > > > > Linux, BSD or UNIX'es, you can simply run > > > ./configure followed by make > > > > to build the emulator. If you run into any kind of > > > trouble with this, > > > > please let me know, and I'll try to resolve them, > > > > > > > > Camiel. > > > > > > > > On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler > > > <bdw...@in...> > > > > wrote: > > > > > Yes, that's exactly what's happening -- I write > > > lock the registers prior > > > > > to the execute() call, and since the read from > > > cdrom takes so long, > > > > the > > > > > lock times out. > > > > > > > > > > If anyone is knowledgeable about the workings > > > of IDE, let me know if > > > > > this makes sense: > > > > > > > > > > The alternate status register seems to be a > > > semaphore in some respects: > > > > > the host polls it to determine the 'busy' and > > > 'drq' status to decide > > > > > when to read/write from/to the rest of the > > > registers. When busy > > > > (and/or > > > > > drq) are asserted, the ide thread should have > > > shut down so there won't > > > > > be any contention with the cpu thread. > > > > > > > > > > So I did a couple of things: > > > > > * removed all of the general register locking. > > > > > * busmaster locking is still in place, but it > > > might not be needed. > > > > This > > > > > locking is pretty fine grained so nothing > > > should time out waiting for > > > > > it. > > > > > * created an alt_status variable which gets > > > updated when the real > > > > status > > > > > becomes stable (i.e. at the end of the > > > execute() run, after the drq > > > > > status is changed, etc) Access to this > > > variable is locked. > > > > > * everything else is a free for all. > > > > > > > > > > This patch implements that methodology as well > > > as an optional delayed > > > > > interrupt. The OSes still lose interrupts > > > sometimes and ATAPI is > > > > busted > > > > > something fierce. If anyone wants to take a > > > shot at it, feel free. > > > > I've > > > > > been looking at it long enough that I'm out of > > > ideas as to what is > > > > going > > > > > wrong. > > > > > > > > > > Brian > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Tue, 2008-03-18 at 13:13 +0100, Camiel > > > Vanderhoeven wrote: > > > > > > Brian, > > > > > > > > > > > > I think you're the one who understands the > > > ATAPI state engine best; > > > > > > could there be a point where the ATAPI engine > > > is waiting for > > > > something > > > > > > from the CPU, while keeping the registers > > > mutex write-locked? > > > > > > > > > > > > Camiel. > > > > > > > > > > > > On Tue, Mar 18, 2008 at 12:36 PM, Fausto > > > Saporito <fa...@un...> > > > > wrote: > > > > > > > Hello all, > > > > > > > > > > > > > > I have to fix my previous post. > > > > > > > > > > > > > > I have the same error with a "file", not > > > only with "device". > > > > > > > > > > > > > > regards, > > > > > > > fausto > > > > > > > > > > > > > > > > > > > > > > > > > > > > Quoting Fausto Saporito <fa...@un...>: > > > > > > > > > > > > > > > Hello Brial et all, > > > > > > > > > > > > > > > > just for your info, with the latest cvs > > > I have always a crash > > > > during a > > > > > > > > cdrom mount, with the same error: > > > > > > > > > > > > > > > > Exception in CPU thread: Threading > > > error: Locking error > > > > (Timeout: > > > > > > > > c:\users\p\es4 > > > > > > > > 0\src\Lock.h, line 581) trying to > > > read-lock mutex ide1-registers > > > > from > > > > > > > > thread cpu > > > > > > > > 0. > > > > > > > > : c:\users\p\es40\src\Lock.h, line 587. > > > > > > > > > > > > > > > > regards, > > > > > > > > fausto > > > > > > > > > > > > > > > > PS > > > > > > > > with file is ok. > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > > > This SF.net email is sponsored by: > > > Microsoft > > > > > > > > Defy all challenges. Microsoft(R) Visual > > > Studio 2008. > > > > > > > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > > > > > > _______________________________________________ > > > > > > > > Es40-developers mailing list > > > > > > > > Es4...@li... > > > > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > > This SF.net email is sponsored by: > > > Microsoft > > > > > > > Defy all challenges. Microsoft(R) Visual > > > Studio 2008. > > > > > > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > > > > > _______________________________________________ > > > > > > > Es40-developers mailing list > > > > > > > Es4...@li... > > > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------------------------------------------------------- > > > > > > This SF.net email is sponsored by: Microsoft > > > > > > Defy all challenges. Microsoft(R) Visual > > > Studio 2008. > > > > > > > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > > > > > > > > _______________________________________________ > > > > > > Es40-developers mailing list > > > > > > Es4...@li... > > > > > > > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > === message truncated ===> > > > ------------------------------------------------------------------------- > > > This SF.net email is sponsored by: Microsoft > > > Defy all challenges. Microsoft(R) Visual Studio > > > 2008. > > > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/> > > _______________________________________________ > > > Es40-developers mailing list > > > Es4...@li... > > > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > > > > > > ______________________________________________ > > Enviado desde Correo Yahoo! > > Más formas de estar en contacto. > http://es.docs.yahoo.com/mail/overview/index.html > > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Es40-developers mailing list > > Es4...@li... > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > |
From: Pepito G. <pep...@ya...> - 2008-03-20 19:49:15
|
Hi! ahhh! Problem fixed using cvs update -dP :) Thanks Pepito --- Brian Wheeler <bdw...@in...> escribió: > > On Thu, 2008-03-20 at 17:55 +0100, Pepito Grillo > wrote: > > Hi! > > I have a little problem with configure: > > > > .... > > checking for strspn... yes > > configure: creating ./config.status > > config.status: creating Makefile > > config.status: error: cannot find input file: > > doc/Makefile.in > > > > When you did the cvs update, did you use the -dP > flags? That grabs all > of the new directories (and cleans out the empty > ones) > > Brian > > > > > Pepito > > > > > > --- Paco Linux <pac...@gm...> escribió: > > > > > Hi: > > > > > > Pepito, I have a configure, but I had to make: > chmod > > > +x configure > > > > > > checking for strspn... yes > > > configure: creating ./config.status > > > config.status: creating Makefile > > > config.status: error: cannot find input file: > > > doc/Makefile.in > > > paco@javier:~/es40$ > > > > > > Paco > > > > > > > > > On Thu, Mar 20, 2008 at 12:56 PM, Camiel > > > Vanderhoeven <iam...@gm...> > > > wrote: > > > > > > > Hello, > > > > > > > > I committed this to the repository. Also new > is a > > > new set of > > > > configuration files for Automake and friends. > This > > > means that on > > > > Linux, BSD or UNIX'es, you can simply run > > > ./configure followed by make > > > > to build the emulator. If you run into any > kind of > > > trouble with this, > > > > please let me know, and I'll try to resolve > them, > > > > > > > > Camiel. > > > > > > > > On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler > > > <bdw...@in...> > > > > wrote: > > > > > Yes, that's exactly what's happening -- I > write > > > lock the registers prior > > > > > to the execute() call, and since the read > from > > > cdrom takes so long, > > > > the > > > > > lock times out. > > > > > > > > > > If anyone is knowledgeable about the > workings > > > of IDE, let me know if > > > > > this makes sense: > > > > > > > > > > The alternate status register seems to be a > > > semaphore in some respects: > > > > > the host polls it to determine the 'busy' > and > > > 'drq' status to decide > > > > > when to read/write from/to the rest of the > > > registers. When busy > > > > (and/or > > > > > drq) are asserted, the ide thread should > have > > > shut down so there won't > > > > > be any contention with the cpu thread. > > > > > > > > > > So I did a couple of things: > > > > > * removed all of the general register > locking. > > > > > * busmaster locking is still in place, but > it > > > might not be needed. > > > > This > > > > > locking is pretty fine grained so nothing > > > should time out waiting for > > > > > it. > > > > > * created an alt_status variable which gets > > > updated when the real > > > > status > > > > > becomes stable (i.e. at the end of the > > > execute() run, after the drq > > > > > status is changed, etc) Access to this > > > variable is locked. > > > > > * everything else is a free for all. > > > > > > > > > > This patch implements that methodology as > well > > > as an optional delayed > > > > > interrupt. The OSes still lose interrupts > > > sometimes and ATAPI is > > > > busted > > > > > something fierce. If anyone wants to take > a > > > shot at it, feel free. > > > > I've > > > > > been looking at it long enough that I'm out > of > > > ideas as to what is > > > > going > > > > > wrong. > > > > > > > > > > Brian > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > On Tue, 2008-03-18 at 13:13 +0100, Camiel > > > Vanderhoeven wrote: > > > > > > Brian, > > > > > > > > > > > > I think you're the one who understands > the > > > ATAPI state engine best; > > > > > > could there be a point where the ATAPI > engine > > > is waiting for > > > > something > > > > > > from the CPU, while keeping the registers > > > mutex write-locked? > > > > > > > > > > > > Camiel. > > > > > > > > > > > > On Tue, Mar 18, 2008 at 12:36 PM, Fausto > > > Saporito <fa...@un...> > > > > wrote: > > > > > > > Hello all, > > > > > > > > > > > > > > I have to fix my previous post. > > > > > > > > > > > > > > I have the same error with a "file", > not > > > only with "device". > > > > > > > > > > > > > > regards, > > > > > > > fausto > > > > > > > > > > > > > > > > > > > > > > > > > > > > Quoting Fausto Saporito > <fa...@un...>: > > > > > > > > > > > > > > > Hello Brial et all, > > > > > > > > > > > > > > > > just for your info, with the latest > cvs > > > I have always a crash > > > > during a > > > > > > > > cdrom mount, with the same error: > > > > > > > > > > > > > > > > Exception in CPU thread: Threading > > > error: Locking error > > > > (Timeout: > > > > > > > > c:\users\p\es4 > > > > > > > > 0\src\Lock.h, line 581) trying to > > > read-lock mutex ide1-registers > > > > from > > > > > > > > thread cpu > > > > > > > > 0. > > > > > > > > : c:\users\p\es40\src\Lock.h, line > 587. > > > > > > > > > > > > > > > > regards, > > > > > > > > fausto > > > > > > > > > > > > > > > > PS > > > > > > > > with file is ok. > > > > > > > > > > > > > > > > > > > > > === message truncated === ______________________________________________ Enviado desde Correo Yahoo! Más formas de estar en contacto. http://es.docs.yahoo.com/mail/overview/index.html |
From: Fausto S. <fa...@un...> - 2008-03-20 17:31:57
|
Hello all, after the latest patch, the issue is still present. During the boot (on the console) I have : Checking for Installation Tasks... cam_logger: SCSI event packet cam_logger: bus 0 target 0 lun 0 ss_perform_timeout timeout on request on the bus, scheduled bus reset Active CCB at time of error cam_logger: SCSI event packet cam_logger: bus 0 target 0 lun 0 ss_perform_timeout timeout on request on the bus, scheduled bus reset Active CCB at time of error cam_logger: SCSI event packet cam_logger: bus 0 target 0 lun 0 ss_perform_timeout timeout on request on the bus, scheduled bus reset Active CCB at time of error looping..., and on DOS console I have Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 Set multiple mode: sector_count = 128 This isn't a blocking issue, but the emulated system is very slowed... regards, fausto Quoting Camiel Vanderhoeven <iam...@gm...>: > Hello, > > I committed this to the repository. Also new is a new set of > configuration files for Automake and friends. This means that on > Linux, BSD or UNIX'es, you can simply run ./configure followed by make > to build the emulator. If you run into any kind of trouble with this, > please let me know, and I'll try to resolve them, > > Camiel. > > On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler <bdw...@in...> wrote: >> Yes, that's exactly what's happening -- I write lock the registers prior >> to the execute() call, and since the read from cdrom takes so long, the >> lock times out. >> >> If anyone is knowledgeable about the workings of IDE, let me know if >> this makes sense: >> >> The alternate status register seems to be a semaphore in some respects: >> the host polls it to determine the 'busy' and 'drq' status to decide >> when to read/write from/to the rest of the registers. When busy (and/or >> drq) are asserted, the ide thread should have shut down so there won't >> be any contention with the cpu thread. >> >> So I did a couple of things: >> * removed all of the general register locking. >> * busmaster locking is still in place, but it might not be needed. This >> locking is pretty fine grained so nothing should time out waiting for >> it. >> * created an alt_status variable which gets updated when the real status >> becomes stable (i.e. at the end of the execute() run, after the drq >> status is changed, etc) Access to this variable is locked. >> * everything else is a free for all. >> >> This patch implements that methodology as well as an optional delayed >> interrupt. The OSes still lose interrupts sometimes and ATAPI is busted >> something fierce. If anyone wants to take a shot at it, feel free. I've >> been looking at it long enough that I'm out of ideas as to what is going >> wrong. >> >> Brian >> >> >> >> >> >> >> On Tue, 2008-03-18 at 13:13 +0100, Camiel Vanderhoeven wrote: >> > Brian, >> > >> > I think you're the one who understands the ATAPI state engine best; >> > could there be a point where the ATAPI engine is waiting for something >> > from the CPU, while keeping the registers mutex write-locked? >> > >> > Camiel. >> > >> > On Tue, Mar 18, 2008 at 12:36 PM, Fausto Saporito >> <fa...@un...> wrote: >> > > Hello all, >> > > >> > > I have to fix my previous post. >> > > >> > > I have the same error with a "file", not only with "device". >> > > >> > > regards, >> > > fausto >> > > >> > > >> > > >> > > Quoting Fausto Saporito <fa...@un...>: >> > > >> > > > Hello Brial et all, >> > > > >> > > > just for your info, with the latest cvs I have always a >> crash during a >> > > > cdrom mount, with the same error: >> > > > >> > > > Exception in CPU thread: Threading error: Locking error (Timeout: >> > > > c:\users\p\es4 >> > > > 0\src\Lock.h, line 581) trying to read-lock mutex >> ide1-registers from >> > > > thread cpu >> > > > 0. >> > > > : c:\users\p\es40\src\Lock.h, line 587. >> > > > >> > > > regards, >> > > > fausto >> > > > >> > > > PS >> > > > with file is ok. >> > > > >> > > > >> ------------------------------------------------------------------------- >> > > > This SF.net email is sponsored by: Microsoft >> > > > Defy all challenges. Microsoft(R) Visual Studio 2008. >> > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> > > > _______________________________________________ >> > > > Es40-developers mailing list >> > > > Es4...@li... >> > > > https://lists.sourceforge.net/lists/listinfo/es40-developers >> > > > >> > > >> > > >> > > >> > > >> ------------------------------------------------------------------------- >> > > This SF.net email is sponsored by: Microsoft >> > > Defy all challenges. Microsoft(R) Visual Studio 2008. >> > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> > > _______________________________________________ >> > > Es40-developers mailing list >> > > Es4...@li... >> > > https://lists.sourceforge.net/lists/listinfo/es40-developers >> > > >> > >> > ------------------------------------------------------------------------- >> > This SF.net email is sponsored by: Microsoft >> > Defy all challenges. Microsoft(R) Visual Studio 2008. >> > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> > _______________________________________________ >> > Es40-developers mailing list >> > Es4...@li... >> > https://lists.sourceforge.net/lists/listinfo/es40-developers >> >> ------------------------------------------------------------------------- >> This SF.net email is sponsored by: Microsoft >> Defy all challenges. Microsoft(R) Visual Studio 2008. >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ >> _______________________________________________ >> Es40-developers mailing list >> Es4...@li... >> https://lists.sourceforge.net/lists/listinfo/es40-developers >> >> > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers > |
From: Brian W. <bdw...@in...> - 2008-03-20 18:36:15
|
Yeah, well...the IDE code is pretty broken right now. Between the locking and timing issues, its a wonder it works at all :) Tru64 does, however, seem to work with regular disks (vs CDROMs) but it does time out sometimes. On my development copy I've rolled back the patch since it didn't fix it and it looks like the host doesn't always check the alternate status bits prior to tinkering with the rest of the registers. Camiel, is it possible (and/or legitimate) to do something like this: { SCOPED_WRITE_LOCK(some_rwlock); . . . some_rwlock->unlock(); a_long_running_function_like_fread(); some_rwlock->writeLock(); . . . } So I can release my lock while trying to run the fread() on physical devices? Where does one put the -DDEBUG_IDE style flags when using configure? On Thu, 2008-03-20 at 17:36 +0100, Fausto Saporito wrote: > Hello all, > > after the latest patch, the issue is still present. > During the boot (on the console) I have : > > Checking for Installation Tasks... > cam_logger: SCSI event packet > cam_logger: bus 0 target 0 lun 0 > ss_perform_timeout > timeout on request on the bus, scheduled bus reset > Active CCB at time of error > cam_logger: SCSI event packet > cam_logger: bus 0 target 0 lun 0 > ss_perform_timeout > timeout on request on the bus, scheduled bus reset > Active CCB at time of error > cam_logger: SCSI event packet > cam_logger: bus 0 target 0 lun 0 > ss_perform_timeout > timeout on request on the bus, scheduled bus reset > Active CCB at time of error > > looping..., and on DOS console I have > > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > Set multiple mode: sector_count = 128 > > This isn't a blocking issue, but the emulated system is very slowed... > > regards, > fausto > Quoting Camiel Vanderhoeven <iam...@gm...>: > > > Hello, > > > > I committed this to the repository. Also new is a new set of > > configuration files for Automake and friends. This means that on > > Linux, BSD or UNIX'es, you can simply run ./configure followed by make > > to build the emulator. If you run into any kind of trouble with this, > > please let me know, and I'll try to resolve them, > > > > Camiel. > > > > On Tue, Mar 18, 2008 at 2:55 PM, Brian Wheeler <bdw...@in...> wrote: > >> Yes, that's exactly what's happening -- I write lock the registers prior > >> to the execute() call, and since the read from cdrom takes so long, the > >> lock times out. > >> > >> If anyone is knowledgeable about the workings of IDE, let me know if > >> this makes sense: > >> > >> The alternate status register seems to be a semaphore in some respects: > >> the host polls it to determine the 'busy' and 'drq' status to decide > >> when to read/write from/to the rest of the registers. When busy (and/or > >> drq) are asserted, the ide thread should have shut down so there won't > >> be any contention with the cpu thread. > >> > >> So I did a couple of things: > >> * removed all of the general register locking. > >> * busmaster locking is still in place, but it might not be needed. This > >> locking is pretty fine grained so nothing should time out waiting for > >> it. > >> * created an alt_status variable which gets updated when the real status > >> becomes stable (i.e. at the end of the execute() run, after the drq > >> status is changed, etc) Access to this variable is locked. > >> * everything else is a free for all. > >> > >> This patch implements that methodology as well as an optional delayed > >> interrupt. The OSes still lose interrupts sometimes and ATAPI is busted > >> something fierce. If anyone wants to take a shot at it, feel free. I've > >> been looking at it long enough that I'm out of ideas as to what is going > >> wrong. > >> > >> Brian > >> > >> > >> > >> > >> > >> > >> On Tue, 2008-03-18 at 13:13 +0100, Camiel Vanderhoeven wrote: > >> > Brian, > >> > > >> > I think you're the one who understands the ATAPI state engine best; > >> > could there be a point where the ATAPI engine is waiting for something > >> > from the CPU, while keeping the registers mutex write-locked? > >> > > >> > Camiel. > >> > > >> > On Tue, Mar 18, 2008 at 12:36 PM, Fausto Saporito > >> <fa...@un...> wrote: > >> > > Hello all, > >> > > > >> > > I have to fix my previous post. > >> > > > >> > > I have the same error with a "file", not only with "device". > >> > > > >> > > regards, > >> > > fausto > >> > > > >> > > > >> > > > >> > > Quoting Fausto Saporito <fa...@un...>: > >> > > > >> > > > Hello Brial et all, > >> > > > > >> > > > just for your info, with the latest cvs I have always a > >> crash during a > >> > > > cdrom mount, with the same error: > >> > > > > >> > > > Exception in CPU thread: Threading error: Locking error (Timeout: > >> > > > c:\users\p\es4 > >> > > > 0\src\Lock.h, line 581) trying to read-lock mutex > >> ide1-registers from > >> > > > thread cpu > >> > > > 0. > >> > > > : c:\users\p\es40\src\Lock.h, line 587. > >> > > > > >> > > > regards, > >> > > > fausto > >> > > > > >> > > > PS > >> > > > with file is ok. > >> > > > > >> > > > > >> ------------------------------------------------------------------------- > >> > > > This SF.net email is sponsored by: Microsoft > >> > > > Defy all challenges. Microsoft(R) Visual Studio 2008. > >> > > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > >> > > > _______________________________________________ > >> > > > Es40-developers mailing list > >> > > > Es4...@li... > >> > > > https://lists.sourceforge.net/lists/listinfo/es40-developers > >> > > > > >> > > > >> > > > >> > > > >> > > > >> ------------------------------------------------------------------------- > >> > > This SF.net email is sponsored by: Microsoft > >> > > Defy all challenges. Microsoft(R) Visual Studio 2008. > >> > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > >> > > _______________________________________________ > >> > > Es40-developers mailing list > >> > > Es4...@li... > >> > > https://lists.sourceforge.net/lists/listinfo/es40-developers > >> > > > >> > > >> > ------------------------------------------------------------------------- > >> > This SF.net email is sponsored by: Microsoft > >> > Defy all challenges. Microsoft(R) Visual Studio 2008. > >> > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > >> > _______________________________________________ > >> > Es40-developers mailing list > >> > Es4...@li... > >> > https://lists.sourceforge.net/lists/listinfo/es40-developers > >> > >> ------------------------------------------------------------------------- > >> This SF.net email is sponsored by: Microsoft > >> Defy all challenges. Microsoft(R) Visual Studio 2008. > >> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > >> _______________________________________________ > >> Es40-developers mailing list > >> Es4...@li... > >> https://lists.sourceforge.net/lists/listinfo/es40-developers > >> > >> > > > > ------------------------------------------------------------------------- > > This SF.net email is sponsored by: Microsoft > > Defy all challenges. Microsoft(R) Visual Studio 2008. > > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > > _______________________________________________ > > Es40-developers mailing list > > Es4...@li... > > https://lists.sourceforge.net/lists/listinfo/es40-developers > > > > > > ------------------------------------------------------------------------- > This SF.net email is sponsored by: Microsoft > Defy all challenges. Microsoft(R) Visual Studio 2008. > http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ > _______________________________________________ > Es40-developers mailing list > Es4...@li... > https://lists.sourceforge.net/lists/listinfo/es40-developers |
From: Camiel V. <iam...@gm...> - 2008-03-21 14:29:13
|
Hi Brian, On Thu, Mar 20, 2008 at 7:36 PM, Brian Wheeler <bdw...@in...> wrote: > Camiel, is it possible (and/or legitimate) to do something like this: > > { > SCOPED_WRITE_LOCK(some_rwlock); > . > . > . > some_rwlock->unlock(); > a_long_running_function_like_fread(); > some_rwlock->writeLock(); > . > . > . > } > > So I can release my lock while trying to run the fread() on physical > devices? Yes, that should be possible. Just make sure that you always lock it again in this case. The destructor on the ScopedLock will always try to unlock it, and not all implementations like trying to unlock an already unlocked mutex. > Where does one put the -DDEBUG_IDE style flags when using configure? This is something I've given considerable thought. I wanted to have a couple of questions about this when running configure. At first I wanted to do this from the configure script itself; I've been playing around with a couple of m4 macro's that should do this, but never managed to get it working. Using read failed because stdin was no longer the terminal. So instead, I've changed the reconf script in such a way that it renames the original configure script to configure_2.sh; then it creates a script called configure_1.sh that contains questions for debugging flags, and finally creates a new configure script that calls configure_1.sh followed by configure_2.sh. This is all in CVS now. When you run ./configure now, you get a couple of questions such as: camiel@linux-laptop:~/es40> ./configure This is the debug-options configuration script for the ES40 emulator If you don't want any debugging options enabled, answer YES to the following question Do you want the defaults for all options? [yes]: no Do you want to show the cycle counter? [yes]: Do you want to enable VGA debugging? [no]: yes Do you want to enable Serial Port debugging? [no]: no Do you want to enable one or more IDE debugging options? [no]: yes Do you want to enable all IDE debugging? [no]: yes Do you want to enable unknown memory access debugging? [no]: no After which the normal configure script runs. If you ever want to change debugging flags without running configure, simply run ./configure_1.sh The debugging flags are stored in src/config_debug.h: camiel@linux-laptop:~/es40> cat src/config_debug.h // This file contains the debug configuration options. // This file was generated by configure_1.sh // Enable the cycle counter //#define HIDE_COUNTER 1 // Enable VGA debugging #define DEBUG_VGA 1 // Disable Serial Port debugging //#define DEBUG_SERIAL 1 // Enable all IDE debugging #define DEBUG_IDE 1 // Disable unknown memory access debugging //#define DEBUG_UNKMEM 1 If you want to add debugging flags, don't change configure_1.sh directly; instead, edit configure_1.m4; it has a list of debugging options like this: ES_ASK_DEBUG_Q(IDE Busmaster, IDE_BUSMASTER) ES_ASK_DEBUG_Q(IDE Command, IDE_COMMAND) ES_ASK_DEBUG_Q(IDE DMA, IDE_DMA) ES_ASK_DEBUG_Q(IDE Interrupt, IDE_INTERRUPT) ES_ASK_DEBUG_Q(IDE Command Register, IDE_REG_COMMAND) ES_ASK_DEBUG_Q(IDE Control Register, IDE_REG_CONTROL) ES_ASK_DEBUG_Q(IDE ATAPI Packet, IDE_PACKET) ES_ASK_DEBUG_Q(IDE Thread, IDE_THREADS) ES_ASK_DEBUG_Q(IDE Mutexes, IDE_LOCKS) Then run ./reconfig, and you should have up-to-date configure scripts. You should have Automake (1.10), Autoconf (2.61) and m4 (1.4.10). The version numbers are those on my linux box, older versions might not work with our scripts. I'm pretty fond of this solution, but if there's anything in here you're not happy with, please let me know. Camiel. |