BSA's NSH implementation on Windows relies on Cygwin. Sometimes you may encounter an error like the below while running NSH jobs from a Windows application server:
0 [main] nsh 7868 child_info_fork::abort: <C:\Program Files\BMC Software\BladeLogic\NSH\bin\cygblcrypto-0.9.8.dll>: Loaded to different address: parent(0x590000) != child(0x700000)
nsh: fork failed: resource temporarily unavailable
This is an error from the underlying Cygwin layer. To correct this you can use the 'rebase' utility from cygwin. Attached is a version of the rebase executable compiled with the 1.7.33 version of cygwin1.dll.
To use it do the following:
- Copy the attached to the NSH\bin directory on your application server(s)
- Stop the Application Server process and ensure there are no running NSH processes or commands.
- Open a cmd prompt and cd to the NSH\bin directory
- run: rebase.exe -b 0x70000000 bl*.dll cygblcrypto*.dll cyggcc*.dll cygblssl*.dll
- The output will look like:
bladmin.dll: skipped because wrong machine type.
blclientjni.dll: skipped because not rebaseable
blclientjni64.dll: skipped because wrong machine type.
blclijni.dll: skipped because not rebaseable
blinexclude.dll: skipped because wrong machine type.
bllibeay64.dll: skipped because not rebaseable
blsrp.dll: skipped because not rebaseable
blssleay32.dll: skipped because not rebaseable
blssleay64.dll: skipped because wrong machine type.