Re: Cyrix (was Pentium) COMA in user-mode

B. James Phillippe (bryan@Terran.ORG)
Sat, 8 Nov 1997 21:37:42 -0800 (PST)

On Sun, 9 Nov 1997, Andre Derrick Balsa wrote:

> Solution:
> ==========
> OK, now please _revert_ your previous no_lock patch. Recompile :-(
> Reinstall :-( Reboot :-(

Easier said then done; I've been running the Mike Jagdis 2.1.39 patch
since then, and it will take a bit of hand work to pull out now (true, an
advantage to using set6x86).

> This time, _please_ use set6x86. I can assure you that it takes less
> time to download, compile and install set6x86 than to recompile the
> kernel. Just add the following line to the default rc.cyrix script:

I will concede that it is a simpler solution to use set6x86 (I have
version 1.3 and have messed with it some already. In fact, I was using
the original set68x6 prior to the 2.1.39 patch). However, I must say that
I _like_ the patch. It's the perfect demonstration of how having the
source to your OS allows you to tweak for your needs. I plan to continue
using it as long as it is supported, and to go it on my own as long as I
can after that. I will further investigate the features of set6x86
though; I am open minded and can certainly be convinced to switch, if I
find it ultimately gives better performance.

> set6x86 -p 0xe3 -s 0x04
> This sets weak locking _only_ in the DRAM, and enforces strong locking
> elsewhere (i.e. on all PCI memory space).
> Check that ARR7 is correctly set using the utility that comes with
> set6x86.

When using get6x86 0xe3 after booting with my system, all bits are on.
I'm using 2.1.62 with the 2.1.39 kernel patch (with the change I mentioned
to do NO_LOCK correctly) on a Tyan Titan III 1468 with version 4 AWARD
Cyrix-aware BIOS (dated Dec, 96).

6x86_arr reports this:

6x86 Address Region Register dump:
ARR0: address = 0xA0000 , size = 128 KB
RCR = 0x9 : not cached, write gathering,
ARR1: address = 0xC0000 , size = 256 KB
RCR = 0x1 : not cached,
ARR2: disabled
ARR3: address = 0xA8000 , size = 32 KB
RCR = 0x9 : not cached, write gathering,
ARR4: disabled
ARR5: disabled
ARR6: disabled
ARR7: address = 0x0 , size = 64 MB
RCR = 0xB : cached, weak write ordering, write gathering,

> Now please reload X, test Netscape, etc...
> Testing goes on. :-)

I will do as you suggest, for the sake of testing this problem. Tomorrow,
I'll build a clean 2.1.62 and use only set6x86. Then I'll try
X/Communicator et al. I'll let you know what happens. Thanks for all
your excellent advice.


B. James Phillippe <bryan@Terran.ORG>
UNIX, Linux, networks, C, Perl, Java, etc.