Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Jun 2011 15:57:05 +0200
From:      Joerg Wunsch <freebsd-stable@uriah.heep.sax.de>
To:        freebsd-stable@freebsd.org
Subject:   doscmd under 8-stable, anyone?
Message-ID:  <20110615135704.GQ23206@uriah.heep.sax.de>

next in thread | raw e-mail | index | archive | help
When trying to use doscmd on 8-stable, all I get is:

Error mapping HMA, HMA disabled: : Invalid argument
Segmentation fault (core dumped)

The segfault happens at the end of mem_init(), when the allocated DOS
memory (which is located at virtual address 0) is attempted to be
written to.  Apparently, the mmap() failure that causes the "HMA
disabled" message is actually a fatal error rather than a benign one
the could be ignored, as it results in no valid DOS memory allocation
at all.

Right now, the only older system I could test it against uses FreeBSD
5.x, where the mmap() works as expected.  So does anyone have an idea
why this mmap() call:

    if (mmap((caddr_t)0x000000, 0x100000,
                   PROT_EXEC | PROT_READ | PROT_WRITE,
                   MAP_ANON | MAP_FIXED | MAP_SHARED,
                   -1, 0) == MAP_FAILED) {
        perror("Error mapping HMA, HMA disabled: ");
        HMA_a20 = -1;
        close(HMA_fd_off);
        close(HMA_fd_on);
        return;
    }

yields an EINVAL now under 8-stable?

-- 
cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL

http://www.sax.de/~joerg/                        NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110615135704.GQ23206>