qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Kevin O'Connor <kevin@koconnor.net>
To: "Alain Ribière" <alain_ribiere@yahoo.com>
Cc: "seabios@seabios.org" <seabios@seabios.org>,
	"qemu-devel@nongnu.org" <qemu-devel@nongnu.org>
Subject: Re: [Qemu-devel] Re : Re : [SeaBIOS] : Memory problem with Qemu/SeaBIOS
Date: Wed, 9 May 2012 20:44:45 -0400	[thread overview]
Message-ID: <20120510004445.GA19059@morn.localdomain> (raw)
In-Reply-To: <1336579073.87968.YahooMailNeo@web130105.mail.mud.yahoo.com>

On Wed, May 09, 2012 at 08:57:53AM -0700, Alain Ribière wrote:
> Tanks for your answer.
> 
> 
> I have to apologize, I made a mistake. I rechecked my application and used git bisect.
> So I found that this is not a SeaBIOS issue (actually it's more a C-DOS issues...). My problem comes from this Qemu commit :
> 
> 49669fc551e0ccd2310a9584a9b7343a0bcae477 is the first bad commit
> commit 49669fc551e0ccd2310a9584a9b7343a0bcae477
[...]
> 
> Also I found the theorical memory map of the C-DOS in the documentation of my legacy application :
> start         end
> 
> 000000    9FFFF    Program area
> 
> 0A0000    0BFFFF    Video memory
> 
> 0C00000    0C7FFF    BIOS graphic card
> 0C8000    0CBFFF    BIOS cache controller
> 0CC000    0CFFFF    BIOS removable disk
> 0D0000    0D3FFF    BIOS network adapter
> 0D4000    0EFFFF    CDOS system
> 0F0000    0FFFFF    ROM BIOS
> 
> I wonder what is the CDOS system at 0D4000... It seems a bit strange.

Very odd.  This is still controlled by seabios.  Indeed, if I apply
this (clearly incorrect) patch to seabios:

diff --git a/src/shadow.c b/src/shadow.c
index c0c8cc2..73c0670 100644
--- a/src/shadow.c
+++ b/src/shadow.c
@@ -83,7 +83,7 @@ make_bios_readonly_intel(u16 bdf, u32 pam0)
     for (i=0; i<6; i++) {
         u32 mem = BUILD_ROM_START + i * 32*1024;
         u32 pam = pam0 + 1 + i;
-        if (RomEnd <= mem + 16*1024) {
+        if (0 && RomEnd <= mem + 16*1024) {
             if (RomEnd > mem)
                 pci_config_writeb(bdf, pam, 0x31);
             break;

Then the C-DOS image you posted seems happier.  Basically, if C-DOS is
allowed to write to the e-segment then it seems to do weird things.

> 
> I do not understand why this commit affects the C-DOS memory allocation.
> But you're probably right, C-DOS is using memory addresses he shouldn't for it's own purpose causing conflicts...
> 
> If you have any idea.
> 
> 
> Thanks, and sorry again for the wrong issue (I will remove the SeaBIOS mailing list in the future mails)...
> 

This is still in the SeaBIOS realm.  (Though I'm thinking it's really
a C-DOS bug.)

-Kevin

  reply	other threads:[~2012-05-10  0:44 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-07 15:58 [Qemu-devel] : Memory problem with Qemu/SeaBIOS Alain Ribière
2012-05-08  0:55 ` [Qemu-devel] [SeaBIOS] " Kevin O'Connor
2012-05-08 16:47   ` [Qemu-devel] Re : " Alain Ribière
2012-05-08 22:06     ` Kevin O'Connor
2012-05-09 15:57       ` [Qemu-devel] Re : " Alain Ribière
2012-05-10  0:44         ` Kevin O'Connor [this message]
2012-05-10  1:19           ` Kevin O'Connor
2012-05-10 13:56             ` [Qemu-devel] Re : " Alain Ribière

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=20120510004445.GA19059@morn.localdomain \
    --to=kevin@koconnor.net \
    --cc=alain_ribiere@yahoo.com \
    --cc=qemu-devel@nongnu.org \
    --cc=seabios@seabios.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 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).