Re: upgraded to current - need bnx firmware?
Ryan Flannery wrote on Tue, Dec 26, 2006 at 07:26:59PM -0500: On 12/26/06, George C [EMAIL PROTECTED] wrote: I just upgraded my 4.0 system to -current (GENERIC.MP), You mean, before that, you had a 4.0-release or -stable system? Just a wild guess since you explicitely mention the kernel: Did you also extract the -current base40.tgz file set? See http://www.openbsd.org/faq/faq5.html#Flavors: || Keeping Things in Sync || It is important to understand that OpenBSD is an Operating System, || intended to be taken as a whole, not a kernel with a bunch of || utilities stuck on. You must make sure your kernel, userland || (the supporting utilities and files) and ports tree are all in || sync, or unpleasant things will happen. Said another way (because || people just keep making the error), you can not run brand new ports || on a month old system, or rebuild a kernel from -current source and || expect it to work with a -release userland. Note the last sentence in particular. and when I reboot, the two bnx devices could not find firmware in /etc/firmware. It appears to be looking for /etc/firmware/bnx, but that file is not present. try the following: # cd /usr/src/sys/dev/microcode/bnx # make that should produce a file named 'bnx' in that directory. copy it to /etc/firmware and reboot. That may solve the immediate problem, but i suspect you might have more problems than you noticed yet. I can reboot the old kernel just fine (so it appears the old bnx driver did not require it). Curious how/where the new firmware for bnx is located at, and where I can obtain a copy. Is there some step I missed in the upgrade procedure that builds/adds these firmware files? or is this simply done separately? No, at least on i386, they are just contained in base40.tgz. I followed the FAQ. Very strange. After properly updating to 4.0-current on i386, /etc/firmware/bnx is in place. I just did a source upgrade of my development machine tonight: [EMAIL PROTECTED] $ sysctl kern.version kern.version=OpenBSD 4.0-current (GENERIC) #3: Tue Dec 26 20:45:43 CET 2006 [EMAIL PROTECTED]:/usr/src/sys/arch/i386/compile/GENERIC [EMAIL PROTECTED] $ grep bnx make-061226.log | tail -n3 === sys/dev/microcode/bnx install -c -o root -g bin -m 644 bnx /etc/firmware install -c -o root -g bin -m 644 /usr/src/sys/dev/microcode/bnx/bnx-license /etc/firmware [EMAIL PROTECTED] $ ll /etc/firmware/bnx -rw-r--r-- 1 root bin 87616 Dec 27 01:26 /etc/firmware/bnx The Dec 25 snapshot looks fine, too: [EMAIL PROTECTED] $ tar -tzvf base40.tgz | grep 'etc.*bnx' -rw-r--r-- 1 root bin 87616 Dec 25 11:50 ./etc/firmware/bnx -rw-r--r-- 1 root bin 1946 Dec 25 11:50 ./etc/firmware/bnx-license Obviously, something went wrong in your case. Do not rely on the correctness of your system before you understand what exactly was screwed up. Also I've google'ed the archives/web for any answer to these questions... unfortunately the web mail archives are full of references to the iwi firmware licensing issue, and little else.
Re: upgraded to current - need bnx firmware?
On 12/27/06, Ingo Schwarze [EMAIL PROTECTED] wrote: Ryan Flannery wrote on Tue, Dec 26, 2006 at 07:26:59PM -0500: On 12/26/06, George C [EMAIL PROTECTED] wrote: I just upgraded my 4.0 system to -current (GENERIC.MP), You mean, before that, you had a 4.0-release or -stable system? Just a wild guess since you explicitely mention the kernel: Did you also extract the -current base40.tgz file set? I had a 4.0-release install right from the cd pack. I extracted the source from the cd and then updated it to -current (both /usr/src and /usr/src/sys). then i built the new kernel, reboot, and was going to build the userland when i ran into the bnx firmware problem. i installed the firmware following the instructions above, reboot, and then attempted to build the userland. In section 5.3.4 of the FAQ, after building installing the new kernel... At this point, reboot your machine to activate this new kernel. Note that the new kernel should be running before the next step, though if you have followed the above advice about upgrading to the most recent available snapshot, it may not matter as much. Sometimes, however, APIs change, and the old kernel will be unable to run new applications, but the new kernel will generally support the old ones. however, when I went to build the userland (after rebooting with the new kernel and rebooting after installing the bnx firmware), the build itself went fine (as far as i can tell) but when it was installing everything, i got the following kernel panic: uvm_fault(0xd0761680, 0xefd32000, 0, 1) - e kernel: page fault trap, code=0 Stopped at pmap_page_remove_86+0x114: movl 0(%eax, %edx, 4), %eax) ddb{3} (my USB keyboard stopped working at that point, and i could not obtain a 'ps' or 'trace' output...my apologies) when I reboot, I get the following error after most of the kernel loads, right afer the two bnx devices are found: init: not found panic: no init Stopped at Debugger+0x4: leave I guess I should NOT have reboot before building the userland? After reading the portion of the FAQ I posted above, I thought rebooting would be the 'safe' thing to do. See http://www.openbsd.org/faq/faq5.html#Flavors: || Keeping Things in Sync || It is important to understand that OpenBSD is an Operating System, || intended to be taken as a whole, not a kernel with a bunch of || utilities stuck on. You must make sure your kernel, userland || (the supporting utilities and files) and ports tree are all in || sync, or unpleasant things will happen. Said another way (because || people just keep making the error), you can not run brand new ports || on a month old system, or rebuild a kernel from -current source and || expect it to work with a -release userland. Note the last sentence in particular. and when I reboot, the two bnx devices could not find firmware in /etc/firmware. It appears to be looking for /etc/firmware/bnx, but that file is not present. try the following: # cd /usr/src/sys/dev/microcode/bnx # make that should produce a file named 'bnx' in that directory. copy it to /etc/firmware and reboot. That may solve the immediate problem, but i suspect you might have more problems than you noticed yet. I can reboot the old kernel just fine (so it appears the old bnx driver did not require it). Curious how/where the new firmware for bnx is located at, and where I can obtain a copy. Is there some step I missed in the upgrade procedure that builds/adds these firmware files? or is this simply done separately? No, at least on i386, they are just contained in base40.tgz. I followed the FAQ. Very strange. After properly updating to 4.0-current on i386, /etc/firmware/bnx is in place. I just did a source upgrade of my development machine tonight: [EMAIL PROTECTED] $ sysctl kern.version kern.version=OpenBSD 4.0-current (GENERIC) #3: Tue Dec 26 20:45:43 CET 2006 [EMAIL PROTECTED]:/usr/src/sys/arch/i386/compile/GENERIC [EMAIL PROTECTED] $ grep bnx make-061226.log | tail -n3 === sys/dev/microcode/bnx install -c -o root -g bin -m 644 bnx /etc/firmware install -c -o root -g bin -m 644 /usr/src/sys/dev/microcode/bnx/bnx-license /etc/firmware [EMAIL PROTECTED] $ ll /etc/firmware/bnx -rw-r--r-- 1 root bin 87616 Dec 27 01:26 /etc/firmware/bnx The Dec 25 snapshot looks fine, too: [EMAIL PROTECTED] $ tar -tzvf base40.tgz | grep 'etc.*bnx' -rw-r--r-- 1 root bin 87616 Dec 25 11:50 ./etc/firmware/bnx -rw-r--r-- 1 root bin 1946 Dec 25 11:50 ./etc/firmware/bnx-license Obviously, something went wrong in your case. Do not rely on the correctness of your system before you understand what exactly was screwed up. Also I've google'ed the archives/web for any answer to these questions... unfortunately the web mail archives are full of references to the iwi firmware licensing issue, and little else.
Re: upgraded to current - need bnx firmware?
George C wrote on Wed, Dec 27, 2006 at 04:53:43PM -0500: I had a 4.0-release install right from the cd pack. That's fine, indeed. :-) I extracted the source from the cd and then updated it to -current (both /usr/src and /usr/src/sys). then i built the new kernel, This is not the safest road to -current. Better get a snapshot and use the standard install or upgrade process before you try to compile a -current system. reboot, and was going to build the userland when i ran into the bnx firmware problem. Well, that is about the reason why large jumps forward are more easily done by binary than by source upgrades: $ tar -tzvf 4.0-release/i386/base40.tgz | grep bnx | cut -b56- ./usr/libdata/perl5/site_perl/i386-openbsd/dev/pci/if_bnxreg.ph $ tar -tzvf 4.0-current/i386/base40.tgz | grep bnx | cut -b56- ./etc/firmware/bnx ./etc/firmware/bnx-license ./usr/libdata/perl5/site_perl/i386-openbsd/dev/pci/if_bnxreg.ph If you try to compile a new system, you always run a risk that some part of the task turns out to be non-trivial because something changed in between. The risk increases with time, and going from 4.0-release to 4.0-current in one step proved more difficult than you liked. The FAQ section 5.3.4 you cite is certainly important, yet you should not overlook section 5.3.2, either: http://www.openbsd.org/faq/faq5.html#BldBinary [...] init: not found panic: no init Ooops. That's bad. Apparently, you trashed /sbin, and quite possibly more besides. Do not try to repair that system, at very best, it will result in a waste of time. Reconsider whether you actually need -current. If you are not quite sure, use -stable instead. In case you are really sure you want -current, use the latest snapshot - and stay with that, if you can. See FAQ 5.2: http://www.openbsd.org/faq/faq5.html#WhySrc When you feel the need to upgrade, get the next snapshot.
Re: upgraded to current - need bnx firmware?
On 12/26/06, George C [EMAIL PROTECTED] wrote: Hello misc, I just upgraded my 4.0 system to -current (GENERIC.MP), and when I reboot, the two bnx devices could not find firmware in /etc/firmware. It appears to be looking for /etc/firmware/bnx, but that file is not present. try the following: # cd /usr/src/sys/dev/microcode/bnx # make that should produce a file named 'bnx' in that directory. copy it to /etc/firmware and reboot. I can reboot the old kernel just fine (so it appears the old bnx driver did not require it). Curious how/where the new firmware for bnx is located at, and where I can obtain a copy. Is there some step I missed in the upgrade procedure that builds/adds these firmware files? or is this simply done separately? I followed the FAQ. Also I've google'ed the archives/web for any answer to these questions... unfortunately the web mail archives are full of references to the iwi firmware licensing issue, and little else. -GeorgeC