Re: general protection in 1.2.13

Jason Meadows (ag554@dayton.wright.edu)
Wed, 06 Sep 1995 02:23:35 -0400


Here is a similar problem I'm having.

I've just installed X and I installed groff so I could format the man pages,
but I'm having all kinds of trouble getting it to work. I have no idea what
I'm doing wrong, I hope someone can help me. I hope this is enough information
(and not too much) to figure out what I'm doing wrong. If anyone needs other
info, please tell me and I would be happy to provide it.

# man xedit
Formatting page, please wait...
Unable to handle kernel paging request at virtual address 00080000
current->tss.cr3 = 00041000, %cr3 = 00041000
*pde = 00240067
*pte = 00000000
Oops: 0002
EIP: 0010:0012dc03
EFLAGS: 00010206
eax: 00001000 ebx: 00096460 ecx: 00000001 edx: 0002d000
esi: 0002dffc edi: 00080000 ebp: 00000000 esp: 00019f7c
ds: 0018 es: 002b fs: 002b gs: 002b ss: 0018
Process gtroff (pid: 410, process nr: 24, stackpage=00019000)
Stack: 00370018 003f6c60 00001000 00096460 0007f000 00001000 00124bac 00096460
003f6c60 0007f000 00001000 003c0000 0007f000 6009053c bffffa9c 00110769
00000000 0007f000 00001000 0007f000 6009053c bffffa9c ffffffda 0003002b
Call Trace: 00124bac 00110769
Code: f3 a5 07 01 44 24 20 85 ed 7f 9e ff 8b 84 00 00 00 8d 43 74
/usr/bin/groff: gtroff: Segmentation fault

EIP: 0010:0012dc03
0012dafc _pipe_read

Call Trace: 00124bac 00110769
00124b20 _sys_read
00110710 _sys_call

Kernel version 1.2.12, w/ SLIP, PPP, Sound, IDE ATAPI
Machine type Cyrix 486DX/33 VLB, 4M RAM, 16M swap
170 MB Conner IDE
SoundBlaster 16
14.4 Rockwell Modem
Sony CDU-55E 2X CD-ROM
(Yes I'm already looking for more SIMMs and a bigger hard drive :)

1. The problem does not appear when I am viewing preformatted man pages, only
when I try to view others such as xedit.1x, groff.1, etc. which have not been
formatted.

2. I have used xman with some success, but the formatting is almost
unreadable, and I have encountered 'floating point exception' with several man
pages (xman shuts down before this).

When it does work formatting appears like this:

XEYES(1) XEYES(1)

NAME
xeyes - a fol-
low the mouse X
demo

Here is my man.config also, with all comments removed.

MANDATORY_MANPATH /usr/man
MANDATORY_MANPATH /usr/local/man
MANDATORY_MANPATH /usr/X386/man
MANDATORY_MANPATH /man
MANPATH_MAP /bin /usr/man
MANPATH_MAP /sbin /usr/man
MANPATH_MAP /usr/bin /usr/man
MANPATH_MAP /usr/local/bin /usr/local/man
MANPATH_MAP /usr/X386/bin /usr/X386/man
MANPATH_MAP /usr/bin/X11 /usr/X386/man
MANPATH_MAP /usr/bin/mh /usr/man
TROFF /usr/bin/groff -Tps -mandoc
NROFF /usr/bin/groff -Tascii -mandoc
EQN /usr/bin/geqn -Tps
NEQN /usr/bin/geqn -Tascii
TBL /usr/bin/gtbl
COL /usr/bin/col
REFER /usr/bin/grefer
PIC /usr/bin/gpic
VGRIND
GRAP
PAGER /usr/bin/less -s
COMPRESS /bin/gzip
COMPRESS_EXT .gz
.gz /usr/bin/zcat
.z /usr/bin/zcat
.Z /usr/bin/zcat
.F
.Y

>From reading the Linux FAQ, and the GCC FAQ I have found the following:

Could be caused by:
Parity errors in RAM or other hardware faults.
Overheating chips
Poor IDE controllers being run faster than 8MHz and corrupting swap space.
Sometimes caused by software bugs.

Possible solutions:
Increasing the number of wait states in the CMOS settings might help
As a last resort turn off RAM caching.

Description:
Usually signal 11 (segmentation violations) means a process tried to access
memory out of its process space.

Previous replies on linux-newbie:

On Wed, 30 Aug 1995, Jay Kulpinski wrote:

>I can think of two possibilities:

>(1) you are running out of memory.
> Do you have swap space enabled? Try "cat /proc/meminfo" to
> see how much available memory and swap you have.
>
>(2) /usr/lib/man.config is incorrect.
>
> I had a man.config installed from a Slackware release around
> March 1995 that was incorrect. It had strings like "%BINDIR%"
> or something that I can't remember instead of paths like
> "/usr/bin". You can check that and see if it is correct. Try
> bypassing man with
> "zcat /usr/man/preformat/cat1/xedit.1x.gz | nroff -man"
> and see if that works.

>>> (Note: The following has been corrected in this post:)

On Wed, 30 Aug 1995 Harik A'ttar wrote:

>> EIP: 0010:0012dc03
>> Call Trace: 00124bac 00110769
^^^^^^^^^^^^^^^^
> The hex code means nothing to us. What you need to do is look at your
> System.map file and match it to the closest function w/o going over.
> You need to do this for both the EIP and all the hex in the call trace.
> read /usr/src/linux/README starting with "Oops" as the keyword to look
> for. It will tell you how to find it.
>
> Resend that info and you will get a better response. Kernel version
> machine type and devices would also help to track down the problem.

Jason Meadows ag554@dayton.wright.edu