Subject: Re: init: segmentation violation
To: Gordon W. Ross <gwr@jericho.mc.com>
From: Harry Schreurs <HLS@oce.nl>
List: port-sun3
Date: 07/01/1994 18:35:17
Gordon,

Let me first express my gratitude to the work you are doing.

> > Both 'sh' and 'init' stop working because of the fact, that they both
> > are killed by signal 11 ( Segmentation violation ).
> 
> This is the VM problem we are working on...
> Not yet, unfortunately.  It's a tough one...

I think the problem still isn't solved yet. But I don't think
you are surprised to hear this. :-(

When I use the stuff, that was available on:
    
     Fri Jul  1 12:57:30 MET DST 1994

I get the following message on the console, when trying to
run `csh':

    panic: trap: sig not set

I don't know what's causing this, but maybe you can use
this information to solve this dreaded VM bug.

> > Also I noticed, that the size of the kernel did change dramatically.
> 
> Did the contents change?  Maybe you added DDB or something?

No, I already was using DDB before.
> 
> > At the begin of this month the 'size' command did give the following:
> > 
> >     text    data    bss     dec     hex
> >     586632  96592   83464   ...     ...
> > 
> > Now I get:
> > 
> >     text    data    bss     dec     hex
> >     921960  100560  62848
> > 
> > This doesn't include the necessary change of DDB's SYMTABSIZE
> > from 72000 to 150000, which further increases the data size !!!
> 
> You should not need such a large amount of symbol space unless you
> are leaving in debugging symbols.  Note that DDB has no use for
> debugging symbols (only normal symbols) so you should either
> compile objects without -g or use "strip -d" to remove the
> debugging symbols before you run dbsym on the new kernel.
> Note: the NetBSD strip has a "-d" option, but Sun's does not.

I'am puzzled about this. I don't use the -g option at all.
There must be another explanation.

   
The `config' I did use, follows:
----------------------------------------
#
# new config file for HILTON
#

include "std.sun3"

# Machines to be supported by this kernel
options     "SUN3_50"

# Needs to be set per system.  i.e change these as you see fit
maxusers    4
options     TIMEZONE=480        # minutes west of GMT (for param.c)
options     DST=2           # daylight savings rules (for param.c)

# Standard system options
options     SWAPPAGER, VNODEPAGER, DEVPAGER # paging
options     KTRACE              # system call tracing support
#makeoptions    DEBUG="-g"          # symbols for kgdb + nm
# I use DDB by copying in the symbols with /usr/sbin/dbsym.
options     DDB
options     SYMTAB_SPACE=72000      # was 72000

# Filesystem options
#options    NFSSERVER           # nfs server support
options     NFSCLIENT           # nfs client support
#options    FFS             # ufs file system

# Networking options
options     INET                # IP prototol stack support

# Sun3-specific options
options     COMPAT_SUNOS
options     COMPAT_09

# Sun3-specific debugging options
#options    CONTEXT_DEBUG
#options    VMFAULT_TRACE
#options    EXEC_DEBUG
options     PMAP_DEBUG
#options    SYSCALL_DEBUG
options     DIAGNOSTIC
#options    SCSIDEBUG

config      netbsd swap nfs

le0 at obio? addr ? level 3

zs0 at obio? addr  0x20000 level 2
zs1 at obio? addr  0x00000 level 2
kd0 at mainbus0

#si0 at obio? addr ? level ?
#scsibus* at scsi?
#sd* at scsibus? target ? lun ?
#st* at scsibus? target ? lun ?
#cd* at scsibus? target ? lun ?
#ch* at scsibus? target ? lun ?

idprom0 at obctl? addr ? size ?

pseudo-device   loop
pseudo-device   pty
------------------ END --------------

Using dbsym, I get the following information:

----------- output of `dbsym netbsd' --------------

 text:     753248
 data:      98744
  bss:      62824
 syms:      75216
entry: 0x0E004000
trsiz:          0
drsiz:          0
netbsd: warning: non-standard entry point: 0x0e004000
    expecting entry=0x2000
.data segment  va: 0x0E0BBE60
db_symtabsize  va: 0x0E0BE688
db_symtab      va: 0x0E0BE68C
db_symtabsize off: 0x00002828
db_symtab     off: 0x0000282C
strtab_len: 72275
db_symtabsize val: 0x00011940 (72000)
/tmp/dbsym/dbsym: symbol space too small (72000 < 147491)

--------------- end ---------------

Does this differ much with what you get?
Maybe my development environment isn't OK!

I'am using:

    gas: 2.3
    gcc: 2.5.8
    ld: SUNOS 4.1.1_U1

To this message, I attached the output that is given by `ls -l'.
Anything weird about this?

Kind regards,

Harry Schreurs

P.S. Can you put announcements of source changes, that are relevant
to the sun3-port also in the `port-sun3' mailing list? I don't get
the `source-changes' mailing list anymore and I'm also unable to
get back on this list!
 
--------------------------------------------

#ls -l
total 2719
-rw-r--r--  1 root       180418 Jun 30 19:02 .depend
-rw-r--r--  1 root        19258 Jun 30 18:44 Makefile
-rw-r--r--  1 root        20673 Jun 29 14:25 Makefile.org
-rw-r--r--  1 root         1627 Jun 30 18:46 assym.s
-rw-r--r--  1 root         1967 Jun 30 19:52 autoconf.o
-rw-r--r--  1 root           20 Jun 30 14:14 bpfilter.h
-rw-r--r--  1 root           14 Jun 30 14:14 cd.h
-rw-r--r--  1 root           14 Jun 30 14:14 ch.h
-rw-r--r--  1 root         4569 Jun 30 19:48 clock.o
-rw-r--r--  1 root        17331 Jun 30 19:52 conf.o
-rw-r--r--  1 root         9974 Jun 30 19:50 cons.o
-rw-r--r--  1 root         1494 Jun 30 19:52 control.o
-rw-r--r--  1 root         1515 Jun 30 19:51 copy.o
-rw-r--r--  1 root          613 Jun 30 19:03 db_access.o
-rw-r--r--  1 root        74402 Jun 30 19:03 db_aout.o
-rw-r--r--  1 root         3046 Jun 30 19:04 db_break.o
-rw-r--r--  1 root         5474 Jun 30 19:04 db_command.o
-rw-r--r--  1 root        35178 Jul  1 14:02 db_disasm.o
-rw-r--r--  1 root         3660 Jul  1 14:00 db_examine.o
-rw-r--r--  1 root         2140 Jun 30 19:04 db_expr.o
-rw-r--r--  1 root         2552 Jun 30 19:04 db_input.o
-rw-r--r--  1 root         2074 Jun 30 19:47 db_interface.o
-rw-r--r--  1 root         2427 Jun 30 19:04 db_lex.o
-rw-r--r--  1 root         3547 Jun 30 19:04 db_output.o
-rw-r--r--  1 root          811 Jun 30 19:05 db_print.o
-rw-r--r--  1 root         2937 Jun 30 19:05 db_run.o
-rw-r--r--  1 root         3388 Jun 30 19:05 db_sym.o
-rw-r--r--  1 root         3648 Jun 30 19:48 db_trace.o
-rw-r--r--  1 root         1300 Jun 30 19:05 db_trap.o
-rw-r--r--  1 root         1729 Jun 30 19:05 db_variables.o
-rw-r--r--  1 root         2728 Jun 30 19:05 db_watch.o
-rw-r--r--  1 root          844 Jun 30 19:06 db_write_cmd.o
-rw-r--r--  1 root         9791 Jun 30 19:26 dead_vnops.o
-rw-r--r--  1 root         4207 Jun 30 19:41 device_pager.o
-rw-r--r--  1 root         2452 Jun 30 19:52 disksubr.o
-rw-r--r--  1 root           17 Jun 30 14:14 ether.h
-rw-r--r--  1 root         8518 Jun 30 19:51 event.o
-rw-r--r--  1 root        11191 Jun 30 19:06 exec_aout.o
-rw-r--r--  1 root          262 Jun 30 19:06 exec_conf.o
-rw-r--r--  1 root         9252 Jun 30 19:06 exec_script.o
-rw-r--r--  1 root         9281 Jun 30 19:07 exec_subr.o
-rw-r--r--  1 root          269 Jun 30 19:46 fpspnull.o
-rwxr-xr-x  1 root        24576 Jun 29 14:26 genassym
-rw-r--r--  1 root           18 Jun 30 14:14 idprom.h
-rw-r--r--  1 root         1693 Jun 30 19:50 idprom.o
-rw-r--r--  1 root         6000 Jun 30 19:27 if.o
-rw-r--r--  1 root         9157 Jun 30 19:29 if_ether.o
-rw-r--r--  1 root         5036 Jun 30 19:27 if_ethersubr.o
-rw-r--r--  1 root         9001 Jun 30 19:49 if_le.o
-rw-r--r--  1 root         1477 Jun 30 19:50 if_le_subr.o
-rw-r--r--  1 root         2033 Jun 30 19:27 if_loop.o
-rw-r--r--  1 root         2707 Jun 30 19:29 igmp.o
-rw-r--r--  1 root           15 Jun 30 14:14 imp.h
-rw-r--r--  1 root         5062 Jun 30 19:29 in.o
-rw-r--r--  1 root          547 Jun 30 19:48 in_cksum.o
-rw-r--r--  1 root         4268 Jun 30 19:30 in_pcb.o
-rw-r--r--  1 root         2176 Jun 30 19:30 in_proto.o
-rw-r--r--  1 root        12365 Jun 30 19:07 init_main.o
-rw-r--r--  1 root         7618 Jun 30 19:07 init_sysent.o
-rw-r--r--  1 root         1772 Jun 30 18:44 ioconf.c
-rw-r--r--  1 root         1062 Jun 30 19:57 ioconf.o
-rw-r--r--  1 root         4628 Jun 30 19:30 ip_icmp.o
-rw-r--r--  1 root         9124 Jun 30 19:30 ip_input.o
-rw-r--r--  1 root          118 Jun 30 19:31 ip_mroute.o
-rw-r--r--  1 root         6871 Jun 30 19:31 ip_output.o
-rw-r--r--  1 root         3353 Jun 30 19:52 isr.o
-rw-r--r--  1 root         3994 Jun 30 19:51 kbd.o
-rw-r--r--  1 root           14 Jun 30 14:14 kd.h
-rw-r--r--  1 root         3447 Jun 30 19:50 kd.o
-rw-r--r--  1 root         9400 Jun 30 19:08 kern_acct.o
-rw-r--r--  1 root         4912 Jun 30 19:08 kern_clock.o
-rw-r--r--  1 root        13942 Jun 30 19:09 kern_descrip.o
-rw-r--r--  1 root        12694 Jun 30 19:09 kern_exec.o
-rw-r--r--  1 root        11121 Jun 30 19:09 kern_exit.o
-rw-r--r--  1 root         9621 Jun 30 19:10 kern_fork.o
-rw-r--r--  1 root        10489 Jun 30 19:10 kern_ktrace.o
-rw-r--r--  1 root         2826 Jun 30 19:41 kern_lock.o
-rw-r--r--  1 root         5711 Jun 30 19:10 kern_malloc.o
-rw-r--r--  1 root         3028 Jun 30 19:11 kern_physio.o
-rw-r--r--  1 root         3567 Jun 30 19:11 kern_proc.o
-rw-r--r--  1 root         3981 Jun 30 19:11 kern_prot.o
-rw-r--r--  1 root         5033 Jun 30 19:11 kern_resource.o
-rw-r--r--  1 root        15839 Jun 30 19:12 kern_sig.o
-rw-r--r--  1 root         1854 Jun 30 19:12 kern_subr.o
-rw-r--r--  1 root         6326 Jun 30 19:13 kern_synch.o
-rw-r--r--  1 root        14018 Jun 30 19:12 kern_sysctl.o
-rw-r--r--  1 root        10853 Jun 30 19:13 kern_time.o
-rw-r--r--  1 root         2430 Jun 30 19:13 kern_xxx.o
-rw-r--r--  1 root         3100 Jun 30 19:33 krpc_subr.o
-rw-r--r--  1 root        14163 Jun 30 19:03 locore.o
-rw-r--r--  1 root           16 Jun 30 14:14 loop.h
lrwxrwxrwx  1 root           21 Jun 30 18:44 m68k -> ../../../m68k/include
-rw-r--r--  1 root        19299 Jun 30 19:53 machdep.o
lrwxrwxrwx  1 root           13 Jun 30 18:44 machine -> ../../include
-rw-r--r--  1 root         2424 Jun 30 19:53 mem.o
-rwxr-xr-x  1 root         2717 Jun  7 17:41 mkdep
-rw-r--r--  1 root         2670 Jun 30 19:51 ms.o
-rwxr-xr-x  1 root       999515 Jul  1 14:15 netbsd
-rw-r--r--  1 root        15837 Jun 30 19:34 nfs_bio.o
-rw-r--r--  1 root         5501 Jun 30 19:34 nfs_boot.o
-rw-r--r--  1 root         9511 Jun 30 19:35 nfs_node.o
-rw-r--r--  1 root        18710 Jun 30 19:35 nfs_nqlease.o
-rw-r--r--  1 root        25572 Jun 30 19:36 nfs_socket.o
-rw-r--r--  1 root        20445 Jun 30 19:37 nfs_subs.o
-rw-r--r--  1 root        10183 Jun 30 19:38 nfs_syscalls.o
-rw-r--r--  1 root        14439 Jun 30 19:38 nfs_vfsops.o
-rw-r--r--  1 root        58763 Jun 30 19:41 nfs_vnops.o
-rw-r--r--  1 root          989 Jun 30 19:51 obctl.o
-rw-r--r--  1 root         2239 Jun 30 19:51 obio.o
-rw-r--r--  1 root         1029 Jun 30 19:51 obmem.o
-rw-r--r--  1 root          234 Jun 30 19:48 oc_cksum.o
-rw-r--r--  1 root         5641 Jun 29 14:27 param.c
-rw-r--r--  1 root         8060 Jun 30 19:57 param.o
-rw-r--r--  1 root        28575 Jun 30 19:03 plocore.s
-rw-r--r--  1 root        25320 Jul  1 14:03 pmap.o
-rw-r--r--  1 root           15 Jun 30 14:14 ppp.h
-rw-r--r--  1 root         8419 Jun 30 19:48 process_machdep.o
-rw-r--r--  1 root           16 Jun 30 14:14 prom.h
-rw-r--r--  1 root           15 Jun 30 14:14 pty.h
-rw-r--r--  1 root         6053 Jun 30 19:28 radix.o
-rw-r--r--  1 root          169 Jun 30 19:48 random.o
-rw-r--r--  1 root         1365 Jun 30 19:28 raw_cb.o
-rw-r--r--  1 root         3631 Jun 30 19:31 raw_ip.o
-rw-r--r--  1 root         2102 Jun 30 19:28 raw_usrreq.o
-rw-r--r--  1 root         5518 Jun 30 19:28 route.o
-rw-r--r--  1 root         8471 Jun 30 19:29 rtsock.o
-rw-r--r--  1 root           19 Jun 30 14:14 scsibus.h
-rw-r--r--  1 root           14 Jun 30 14:14 sd.h
-rw-r--r--  1 root           14 Jun 30 14:14 sl.h
-rw-r--r--  1 root        14740 Jun 30 19:26 spec_vnops.o
-rw-r--r--  1 root           14 Jun 30 14:14 st.h
-rw-r--r--  1 root          180 Jun 30 19:54 stub.o
-rw-r--r--  1 root           14 Jun 30 14:14 su.h
-rw-r--r--  1 root         2927 Jun 30 19:14 subr_autoconf.o
-rw-r--r--  1 root         1655 Jun 30 19:14 subr_disk.o
-rw-r--r--  1 root         9220 Jun 30 19:14 subr_log.o
-rw-r--r--  1 root        11529 Jun 30 19:14 subr_prf.o
-rw-r--r--  1 root         1845 Jun 30 19:15 subr_prof.o
-rw-r--r--  1 root         1513 Jun 30 19:15 subr_rmap.o
-rw-r--r--  1 root          780 Jun 30 19:15 subr_xxx.o
-rw-r--r--  1 root         8217 Jun 30 19:54 sun3_startup.o
-rw-r--r--  1 root        10794 Jun 30 19:56 sun_exec.o
-rw-r--r--  1 root         6363 Jun 30 19:56 sun_ioctl.o
-rw-r--r--  1 root        14369 Jun 30 19:57 sun_misc.o
-rw-r--r--  1 root         4027 Jun 30 19:57 sun_syscalls.o
-rw-r--r--  1 root         6532 Jun 30 19:57 sun_sysent.o
-rw-r--r--  1 root        14246 Jun 30 19:42 swap_pager.o
-rw-r--r--  1 root          292 Jun 30 19:57 swapnfs.o
-rw-r--r--  1 root         6132 Jun 30 19:15 sys_generic.o
-rw-r--r--  1 root         4206 Jun 30 19:15 sys_process.o
-rw-r--r--  1 root         2298 Jun 30 19:16 sys_socket.o
-rw-r--r--  1 root           14 Jun 30 14:14 tb.h
-rw-r--r--  1 root         1454 Jun 30 19:31 tcp_debug.o
-rw-r--r--  1 root        11250 Jun 30 19:32 tcp_input.o
-rw-r--r--  1 root         4187 Jun 30 19:32 tcp_output.o
-rw-r--r--  1 root         4270 Jun 30 19:32 tcp_subr.o
-rw-r--r--  1 root         2735 Jun 30 19:33 tcp_timer.o
-rw-r--r--  1 root         4690 Jun 30 19:33 tcp_usrreq.o
-rw-r--r--  1 root         5245 Jul  1 14:03 trap.o
-rw-r--r--  1 root        24825 Jun 30 19:17 tty.o
-rw-r--r--  1 root         3715 Jun 30 19:17 tty_compat.o
-rw-r--r--  1 root         1687 Jun 30 19:17 tty_conf.o
-rw-r--r--  1 root        13864 Jun 30 19:18 tty_pty.o
-rw-r--r--  1 root         4833 Jun 30 19:18 tty_subr.o
-rw-r--r--  1 root         8271 Jun 30 19:18 tty_tty.o
-rw-r--r--  1 root           15 Jun 30 14:14 tun.h
-rw-r--r--  1 root        75195 Jun 30 19:58 typescript
-rw-r--r--  1 root         5713 Jun 30 19:33 udp_usrreq.o
-rw-r--r--  1 root         2554 Jun 30 19:19 uipc_domain.o
-rw-r--r--  1 root         7941 Jun 30 19:19 uipc_mbuf.o
-rw-r--r--  1 root          778 Jun 30 19:19 uipc_proto.o
-rw-r--r--  1 root        11217 Jun 30 19:20 uipc_socket.o
-rw-r--r--  1 root         6854 Jun 30 19:20 uipc_socket2.o
-rw-r--r--  1 root        10461 Jun 30 19:21 uipc_syscalls.o
-rw-r--r--  1 root        14232 Jun 30 19:21 uipc_usrreq.o
-rw-r--r--  1 root           14 Jun 30 14:14 uk.h
-rw-r--r--  1 root         4293 Jun 30 19:55 vector.o
-rw-r--r--  1 root          239 Jul  1 14:14 vers.c
-rw-r--r--  1 root          315 Jul  1 14:14 vers.o
-rw-r--r--  1 root            2 Jul  1 14:14 version
-rw-r--r--  1 root        14353 Jun 30 19:22 vfs_bio.o
-rw-r--r--  1 root         9532 Jun 30 19:22 vfs_cache.o
-rw-r--r--  1 root        13970 Jun 30 19:23 vfs_cluster.o
-rw-r--r--  1 root         7302 Jun 30 19:23 vfs_conf.o
-rw-r--r--  1 root         8500 Jun 30 19:23 vfs_init.o
-rw-r--r--  1 root        11771 Jun 30 19:23 vfs_lockf.o
-rw-r--r--  1 root        11205 Jun 30 19:24 vfs_lookup.o
-rw-r--r--  1 root        18392 Jun 30 19:24 vfs_subr.o
-rw-r--r--  1 root        24024 Jun 30 19:25 vfs_syscalls.o
-rw-r--r--  1 root        10719 Jun 30 19:26 vfs_vnops.o
-rw-r--r--  1 root         7295 Jun 30 19:42 vm_fault.o
-rw-r--r--  1 root         4766 Jun 30 19:42 vm_glue.o
-rw-r--r--  1 root         1030 Jun 30 19:42 vm_init.o
-rw-r--r--  1 root         4887 Jun 30 19:43 vm_kern.o
-rw-r--r--  1 root        10268 Jun 30 19:55 vm_machdep.o
-rw-r--r--  1 root        14560 Jun 30 19:43 vm_map.o
-rw-r--r--  1 root         2477 Jun 30 19:43 vm_meter.o
-rw-r--r--  1 root        12711 Jun 30 19:44 vm_mmap.o
-rw-r--r--  1 root         7206 Jun 30 19:44 vm_object.o
-rw-r--r--  1 root         5675 Jun 30 19:44 vm_page.o
-rw-r--r--  1 root         3150 Jun 30 19:44 vm_pageout.o
-rw-r--r--  1 root         4267 Jun 30 19:45 vm_pager.o
-rw-r--r--  1 root        10538 Jun 30 19:45 vm_swap.o
-rw-r--r--  1 root         9133 Jun 30 19:45 vm_unix.o
-rw-r--r--  1 root         1951 Jun 30 19:46 vm_user.o
-rw-r--r--  1 root           14 Jun 30 14:14 vn.h
-rw-r--r--  1 root        16095 Jun 29 14:27 vnode_if.c
-rw-r--r--  1 root        20911 Jun 30 14:14 vnode_if.h
-rw-r--r--  1 root        11874 Jun 30 19:03 vnode_if.o
-rw-r--r--  1 root        10987 Jun 30 19:46 vnode_pager.o
-rw-r--r--  1 root           14 Jun 30 14:14 zs.h
-rw-r--r--  1 root        10616 Jun 30 19:49 zs.o


------------------------------------------------------------------------------
H.L Schreurs                                            Email: hls@oce.nl
Business Unit Printing Systems                          Phone: +31 77 593775
Oce Nederland B.V.                                      Fax:   +31 77 595434
The Netherlands
------------------------------------------------------------------------------

      ###########################################################
      #  This note does not necessarily represent the position  #
      #     of Oce-Nederland B.V. Therefore no liability or     #
      #      responsibility for whatever will be accepted.      #
      ###########################################################

------------------------------------------------------------------------------