[13421] in Athena Bugs
sun4 7.7R: CD-ROM device drivers
daemon@ATHENA.MIT.EDU (kghandi@MIT.EDU)
Tue Apr 11 16:05:14 1995
From: kghandi@MIT.EDU
To: bugs@MIT.EDU
Date: Tue, 11 Apr 1995 16:05:07 EDT
System name: m37-312-34
Type and version: SPARC/Classic 7.7R
Display type: cgthree
What were you trying to do?
I obtained a CD-ROM from Planetary Data Systems (part of NASA)
containing images of the planets. I mounted the CD-ROM on a
Sparcstation 5 using:
/etc/mount -F hsfs -o ro /dev/dsk/c0t6d0s0 /usr/tmp/cdrom
I well able to access a few files, but the majority were unreadable.
What's wrong:
According to a patch notice on the CD-ROM:
There are two known problems with the Sun's implementation of
ISO 9660 file system:
(1) it does not handle Associated file correctly.
(2) it will complain if the file type of a file is either
ASSOCIATED or RECORD.
A description of how to patch the problem was included (see below), along
with a uuencoded object file. I believe a system administrator would have
to do this. Please let me know if this is possible.
Please describe any relevant documentation references:
CCSD3ZF0000100000001NJPL3IF0PDS200000001 = SFDU_LABEL
RECORD_TYPE = STREAM
PRODUCT_CREATION_TIME = 1993-08-12
OBJECT = TEXT
NOTE = "Driver patch for SunOS."
END_OBJECT = TEXT
END
In order to access GIF files with "xv.su4" under sunos 4.1.2 or
sunos 4.1.3 , you need to patch the CD-ROM file system.
There are two known problems with the Sun's implementation of
ISO 9660 file system:
(1) it does not handle Associated file correctly.
(2) it will complain if the file type of a file is either
ASSOCIATED or RECORD.
The following is the fix for sparcstations running SunOS 4.1.2 and 4.1.3 only.
There are two files: hsfsnode.4m is for sun4m architecture.
hsfsnode.4c is for sun4c architecture. To find out which file
to use: type "arch -k".
To correct the problem, you need to do the followings:
(0) login as root
(1a) uudecode hsfsnode.4m for sun4m architecture
-This will create a file called hsfs_node.o
(1b) uudecode hsfsnode.4c for sun4c architecture
-This will create a file called hsfs_node.o
(2a) for sparcstation using sun4c architecture (e.g. ss1 or ss2)
cp /sys/sun4c/OBJ/hsfs_node.o /sys/sun4c/OBJ/hsfs_node.o.old
cp hsfs_node.o /sys/sun4c/OBJ/hsfs_node.o
(2b) for sun4m architecture (e.g. ss10)
cp /sys/sun4m/OBJ/hsfs_node.o /sys/sun4m/OBJ/hsfs_node.o.old
cp hsfs_node.o /sys/sun4m/OBJ/hsfs_node.o
(3) Rebuild the kernel
(a) cd /sys/sun4c/GENERIC or cd /sys/sun4m/GENERIC
make
(b) if you don't have /sys/sun4c/GENERIC or
/sys/sun4m/GENERIC
cd /sys/sun4c/conf or cd /sys/sun4m/conf
/etc/config GENERIC
cd /sys/sun4c/GENERIC or cd /sys/sun4m/GENERIC
make
Note: you don't have to use GENERIC. You can use whatever
you used to build your own kernel.
(4) save a version of the old kernel, and move
the old kernel to a new place.
cd /
mv /vmunix /vmunix.old
cp /sys/sun4c/GENERIC/vmunix /vmunix or
cp /sys/sun4m/GENERIC/vmunix /vmunix
(5) reboot the new kernel
sync; sync; sync
fastboot