Unexpected behaviour attempting to build pfSense 2.0BETA
-
I've reliably seen panics on clicking on the "apply all changes" button for wireless interfaces ral and rum with a pfSense BETA1 snapshot of 22-Feb-2010 so I'm trying to build a comparable kit to get a kernel with symbols for static functions so I can better decode the backtrace at the time of the panic.
I have followed the instructions on http://devwiki.pfsense.org/DevelopersBootStrapAndDevIso I set the version to RELENG_8_0 since that seemed the closest available option to what I wanted. Then I selected the Apply Patches option and the process stalled for about 3 hours with the system seemingly doing nothing (load averages of around 0.00). Since I did this on an old FreeBSD 7.0 install I had lying around I thought that maybe there was some incompatibility or FreeBSD 7.0 bug so I scrapped that attempt and did a clean install of FreeBSD 8.0 and pretty much got the same result (though at the time of writing its been stalled for a bit over an hour.)
Here's the current display of my session attempting to apply patches:
Removing needed files listed in patches.RELENG_8_0 HEAD
Obtaining FreeBSD sources RELENG_8-supfile…
load: 0.10 cmd: grep 16981 [piperd] 43.00r 0.01u 0.01s 0% 1012k
load: 0.09 cmd: grep 16981 [piperd] 50.31r 0.01u 0.01s 0% 1012k
load: 0.03 cmd: grep 16981 [piperd] 2697.97r 0.01u 0.01s 0% 1012k
load: 0.03 cmd: grep 16981 [piperd] 3717.79r 0.01u 0.01s 0% 1012k
load: 0.00 cmd: grep 16981 [piperd] 6744.24r 0.01u 0.01s 0% 1012kAlso, Is there any significance that the build doesn't give an option for RELENG_8_1 but the current snapshot directories include RELENG_8_1 in their name?
-
I've found the problem. When I invoked menu.sh I chose the option to "set version" and, when prompted "Enter the cvsup server address or hit enter to use the fastest found" I hit the enter key. I noticed that the printed version data displayed soon after gave the CVSUP Server as an email address. I didn't realise the significance of this.
After investigation, I ran menu.sh again and gave "" <enter>(three keystrokes) as the cvsup server and this time the version data didn't include the CVSUP Server.
Problem in menu.sh:
get_text "Enter the cvsup server address or hit enter to use the fastest found" CVSUP_SOURCE=$get_text_value get_text "Enter the E-mail address to send a message to upon operation finish" EMAIL_ADDRESS_WHEN_FINISHED=$get_text_value get_text "Enter the E-mail address to send a message to upon operation error" EMAIL_ADDRESS_WHEN_ERROR=$get_text_value get_text "Enter the twitter username to update upon snapshot posting" TWITTER_SNAPSHOTS_USERNAME=$get_text_value if [ ! "$TWITTER_SNAPSHOTS_USERNAME" = "" ]; then get_text "Enter the twitter password to update upon snapshot posting" TWITTER_SNAPSHOTS_PASSWORD=$get_text_value fi ./set_version.sh $PFSENSE_VERSION \ $CVSUP_SOURCE \ $EMAIL_ADDRESS_WHEN_FINISHED \ $EMAIL_ADDRESS_WHEN_ERROR \ $TWITTER_SNAPSHOTS_USERNAME \ $TWITTER_SNAPSHOTS_PASSWORD
If just the <enter>key is typed to the cvsup server prompt the shell variable CVSUP_SOURCE is set to the null string so when set_version.sh is called the second parameter is null so that on entry to set_version.sh the third parameter from the call becomes the second parameter (hence setting the cvsup server name to the email address).
Perhaps CVSUP_SOURCE, EMAIL_ADDRESS_WHEN_FINISHED and EMAIL_ADDRESS_WHEN_ERROR need to be set to '""' (or somesuch; is there a shell variable to pass null strings as "" rather than <nothing>?) so the parameters don't vanish in the call to set_version.sh.</nothing></enter></enter>