Subject: install/24003: sysinst partition size handling should be more careful
To: None <gnats-bugs@gnats.netbsd.org>
From: Ken Raeburn <raeburn@raeburn.org>
List: netbsd-bugs
Date: 01/06/2004 10:26:22
>Number:         24003
>Category:       install
>Synopsis:       sysinst partition size handling should be more careful
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    install-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Jan 06 15:27:00 UTC 2004
>Closed-Date:
>Last-Modified:
>Originator:     Ken Raeburn
>Release:        NetBSD 1.6.1
>Organization:
        MIT
>Environment:
System: NetBSD fwoosh.raeburn.org 1.6.1 NetBSD 1.6.1 (GENERIC) #0: Wed Apr 9 03:
02:04 UTC 2003 autobuild@tgm.daemon.org:/autobuild/netbsd-1-6/sparc/OBJ/autobuil
d/netbsd-1-6/src/sys/arch/sparc/compile/GENERIC sparc
Architecture: sparc
Machine: sparc
>Description:

I'm installing a sparcstation 5 from cdrom.  I gave it the "standard
with X" configuration, "full installation", told it to create all the
optional file systems (/var, /home, and mfs /tmp).

It created the following label for the disk:

  type: unknown
  disk: mydisk
  label: 
  flags:
  bytes/sector: 512
  sectors/track: 139
  tracks/cylinder: 4
  sectors/cylinder: 556
  cylinders: 3835
  total sectors: 2134305
  rpm: 3600
  interleave: 1
  trackskew: 0
  cylinderskew: 0
  headswitch: 0           # microseconds
  track-to-track seek: 0  # microseconds
  drivedata: 0 

  8 partitions:
  #        size    offset     fstype  [fsize bsize cpg/sgs]
   a:     65608         0     4.2BSD   1024  8192   152   # (Cyl.    0 - 117)
   b:    788408     65608       swap                      # (Cyl.  118 - 1535)
   c:   2134305         0     unused      0     0         # (Cyl.    0 - 3838*)
   d:     65608    854016     4.2BSD   1024  8192   152   # (Cyl. 1536 - 1653)
   e:    937793   1196512     4.2BSD   1024  8192   148   # (Cyl. 2152 - 3838*)
   g:    276888    919624     4.2BSD   1024  8192   152   # (Cyl. 1654 - 2151)

During the unpacking of one of the sets, /usr filled.

I tried again, leaving out the optional file systems.  This time, it
unpacked okay, though at the very end I got:

   At a minimum, you should edit /etc/rc.conf to match your needs.  See
   /etc/defaults/rc.conf for the default values.





			     uid 0 comm sysinst on /instfs: file system full
  Segmentation fault
  Back in microroot; halting machine...

But the system does come up, and appears to be working.
The /usr file system needed somewhat more space than had been
allocated before:

# df /usr
Filesystem  1K-blocks     Used     Avail Capacity  Mounted on
/dev/sd0g      620415   173737    415657    29%    /usr
#

That's nearly 350K sectors.  The g partition (which I assume is where
/usr was in the lots-of-partitions install as well) wasn't that big,
before, but there was space to spare.

>How-To-Repeat:

Install with all the extra partitions.

>Fix:

sysinst should know the platform's size requirements for / and /usr
and /var when the full installation is done, and should create those
partitions at least that large, cutting down /home as necessary to
make them big enough.  Or, the list of sets to install should be
chosen before automatically computed partition sizes are chosen, so
that they can be taken into account.
>Release-Note:
>Audit-Trail:
>Unformatted: