[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
config(8) not saving modifications?
Hello,
After upgrading from OpenBSD 2.7 to 2.9, I changed the parameters for my
NICs to something that could actually detect them. My system is a
486DX4/100, with three 3COM NICs (drivers ep and ec).
After saving the changes in config, they don't appear in the kernel when I
look at it with boot -c and find, though they look fine after boot.
Right know for each reboot I have to boot -c to correctly configure that
NIC.
Here is how I did:
Since I have ec0 and ec1, I had to add ec1 to the generic kernel, and
change the configuration information. (the last one is ep1, detected
correctly)
Here is the config -e output.
OpenBSD 2.9 (GENERIC) #653: Sat Apr 28 13:57:59 MDT 2001
deraadt@i386.openbsd.org:/usr/src/sys/arch/i386/compile/GENERIC
Enter 'help' for information
ukc> find ec
130 ec0 at isa0 port 0x250 size 0 iomem 0xd8000 iosiz 0 irq 9 drq -1 drq2 -1 flags 0x0
ukc> add ec1
Clone Device (DevNo, 'q' or '?') ? 130
Insert before Device (DevNo, 'q' or '?') ? 131
131 ec1 at isa0 port 0x250 size 0 iomem 0xd8000 iosiz 0 irq 9 drq -1 drq2 -1 flags 0x0
ukc> change ec1
131 ec1 at isa0 port 0x250 size 0 iomem 0xd8000 iosiz 0 irq 9 drq -1 drq2 -1 flags 0x0
change [n] y
port [0x250] ? 0x280
size [0] ?
iomem [0xd8000] ? 0xc8000
iosiz [0] ?
irq [9] ? 5
drq [-1] ?
drq2 [-1] ?
flags [0] ?
131 ec1 changed
131 ec1 at isa0 port 0x280 size 0 iomem 0xc8000 iosiz 0 irq 5 drq -1 drq2 -1 flags 0x0
ukc> quit
After the new kernel was saved I rebooted. But the new card was still not
dectected. After a little more investigation, I found a strange line in
boot -c...
User Kernel Config
UKC> find ec
130 ec0 at isa0 port 0x250 size 0 iomem 0xd8000 iosiz 0 irq 9 drq -1 drq2 -1 flags 0x0
131 ec1 at isa0 port 0 size 0 iomem 0 iosiz 0 irq 0 drq 0 drq2 0 flags 0x0
It looks like the changes have not been saved, though the cloned device is
here.
With the verbose boot option, I can read that
>>> probing for ec0
>>> probing for ec0 succeeded
ec0 at isa0 port 0x250/16 iomem 0xd8000/8192 irq 9
ec0: 3Com 3c503 Ethernet (16-bit)
ec0: address 02:60:8c:a9:9d:e9
>>> probing for ec1
>>> probing for ec1 failed
If I enter the necessary information with change ec1, the system detects
both ec0 and ec1.
>>> probing for ec0
>>> probing for ec0 succeeded
ec0 at isa0 port 0x250/16 iomem 0xd8000/8192 irq 9
ec0: 3Com 3c503 Ethernet (16-bit)
ec0: address 02:60:8c:a9:9d:e9
>>> probing for ec1
>>> probing for ec1 succeeded
ec1 at isa0 port 0x280/16 iomem 0xc8000/8192 irq 5 drq 0 drq2 0
ec1: 3Com 3c503 Ethernet (8-bit)
ec1: address 02:60:8c:9e:13:72
Does anybody know why the device I cloned cannot retain the configuration
information between boots, even though I saved it with config -e? Does
config actually save the information? Did I miss something?
I hope I won't have to recompile the kernel, since on this 486 machine, it
can take a while (with no cdrom, a nfs connection to the sources and 16 Mb
of free disk space (out of 250), compiling a kernel is a challenge in
itself... :-) )
Thanks in advance,
-- BooK
------------------------------------------------------------------------------
Philippe BRUHAT - BooK
Blood is thicker than water... so beware of thick relatives.
(Moral from Groo The Wanderer #18 (Epic))