Friday, September 27, 2013

 

Updating LINX within an Element release

Q: I am on element_3.2.3 and want to upgrade the linx version to linx-2.5.1. I copied the linx tarball to the correct place and updated the LINX build version, but am getting this build error now:

make[5]: Entering directory `/element/3party/linx/linux-ppc_85xx/linx-2.5.1'
make[5]: *** No rule to make target `modules'. Stop.
make[5]: Leaving directory `/element/3party/linx/linux-ppc_85xx/linx-2.5.1'
make[4]: *** [/element/ref_platforms/generic_chassis/kernel/2.6.10_mvlcge401_ppc/linx.ko] Error 2

A: You're missing an important change that goes with this LINX upgrade - the top-level Makefile for 3party/linx needs to be updated also, due to some changes in the LINX distribution. 

Another change (which should be transparent to you if you only build linx via ref_platform) is that there is no Makefile delivered with the linx tarball itself.  If you need access to this Makefile for some reason, in 3party/linx/linx-2.5.1 run the "configure" script to generate it. 

The full steps to build with support for the newer-style LINX is:
 
1) update build/versions.mk VERSION_LINX
2) cp linx-2.5.1.tar.gz, updated Makefile and linx-2.5.1-001.patch into 3party/linx
3) rm –rf 3party/linx/linux_x86-64 (or whatever arch) objects
4) ref_platform, make clean here also
 

Labels: ,


Thursday, October 11, 2012

 

FATAL: Module linx already in kernel

Q: Upgrading to an element release running a newer version of LINX, but element can't seem to start due to this error:

FATAL: Module linx already in kernel.
FATAL ERROR: Failure (1) launching /usr/local/element/file_cache/element_3.2.2/bin/linux-x86_64/elemLinxMgr

 A: Certain systems expose a timing problem where LINX can be auto-loaded by other system components before the element LINX manager can deal with it. Thus element startup is hindered by the fact that it believes LINX is already loaded. To get around this, LINX can be made to use the older method of insmod/rmmod (which was used in prior LINX releases) - rather than he current method of modprobe/depmod - for loading/unloading LINX kernel. There is a patch available from support which takes care of this change also. (reference CR-719)

Labels: ,


Wednesday, April 18, 2012

 

LINX: ERROR - RLNH unexpected msg_no: 0 (expected 5)

Q: We are trying to integrate new PowerPC blades on our system. We are seeing LINX errors repeatedly on all blades on our system:

LINX: ERROR - RLNH unexpected msg_no: 0 (expected 5)

The messages happen about 4-5 times per second on the PowerPC blade, and about 3 times per second on the x86 blade.We currently have setups with two of the x86 blades and with the x86 blade and a different PowerPC blade that work properly, so it seems to indicate the problem is with the new PowerPC blade.


A: If you compile LINX from scratch, be sure to check the endianness of your LINX build first before you throw it on any new system. The tip-off here is seeing the problem on x86 (little endian), but not on PPC (bi-endian, but big is default since little must be enabled with a bit flag).

Labels:


Monday, November 08, 2010

 

Build errors with kernels 2.6.27 and higher e.g. BUG_TRAP etc.

Q: Trying to build element 3.x for one of the newer linux kernels, e.g. FC9 is at 2.6.27. The build dies while building LINX. This wasn't a problem with the older kernel?

/home/jmir/SystemManager/Releases/3.1.0_2/3.1.0_sysmgr2/element_3.1.0_sysmgr2/3party/linx/linux-x86_64/linx-2.0.4/net/linx/af_linx.c: In function ‘linx_skb_store_bits’:/home/jmir/SystemManager/Releases/3.1.0_2/3.1.0_sysmgr2/element_3.1.0_sysmgr2/3party/linx/linux-x86_64/linx-2.0.4/net/linx/af_linx.c:1123: error: implicit declaration of function ‘BUG_TRAP’

A: There are several kernel changes in the newer kernels that impact LINX. These are fixed in linx-2.1.0.
- Download the tarball linx-2.1.0.tar.gz
- Place tarball into 3party/linx
- Change the build/versions.mk LINX_VERSION to point to the new release number

Labels: , ,


Thursday, July 08, 2010

 

Element 3.x build missing stubs-32.h

Q: Trying to build Element 3.2.x for the first time, and hitting this compile error:

Making liblinx.a
In file included from /usr/include/features.h:359,
from /usr/include/assert.h:37,
from linx.c:31:
/usr/include/gnu/stubs.h:7:27: error: gnu/stubs-32.h: No such file or directory
make[5]: *** [lib] Error 1
make[5]: Leaving directory
/home/jmir/Element/Releases/3.2.0/element_3.2.0/3party/linx/linux-x86_64/linx-
2.2.2/liblinx


A: Google is your friend. Your 64-bit system was installed without (optional) 386 support. The LINX team decided a while ago that, on 64-bit hosts, liblinx.a shall be built in both 32- and 64-bit versions. So you are on the hook for 32-bit, if you don't want to change the way LINX builds. The easiest way to get through this is to add glibc for 386:

$ yum install glibc-devel.i386

A more complete explanation of the problem can be found at
http://linux.derkeiler.com/Mailing-Lists/Fedora/2008-06/msg02081.html

Q: I did that, but now get this error:

--- Building Element Libraries
make[2]: Entering directory `/home/jmir/Element/Releases/3.2.0/element_3.2.0'

make[3]: Entering directory `/home/jmir/Element/Releases/3.2.0/element_3.2.0/3party/linx'/bin/cp: cannot create regular file
`/home/jmir/Element/Releases/3.2.0/element_3.2.0/ref_platforms/generic_cluster/../../lib/linux-x86_64/liblinx.a':
No such file or directory

make[3]: *** [/home/jmir/Element/Releases/3.2.0/element_3.2.0/ref_platforms/generic_cluster/../../lib/linux-
x86_64/liblinx.a] Error 1


A: This time, google is not your friend. The "native-linux-x86_64" object directories are normal and desired in this case, but the compile error is somewhat misleading. After adding 32-bit support you should "make clean" and start over.

Labels: , ,


This page is powered by Blogger. Isn't yours?

free web hit counter
free invisible web counter