[ovs-discuss] Kernel oops running Open vSwitch on 3.3 Kernel (ARM)
Michele Bozier
mbozier at Airspan.com
Tue Oct 1 09:25:40 UTC 2013
I am having trouble running Open vSwitch on the ARM platform after cross-compiling on an i686 platform. I am using the latest code from master from the Open vSwitch git repository - commit Sept 26th (6a8a8528acb05d6d0a520e09ad1ec67e62b99e5e) and the Arago Kernel 3.3.
The problem I am seeing when running on the target and trying to create a switch is as follows:
insmod ./openvswitch.ko
The module seems to install fine -on the console I get
openvswitch: Open vSwitch switching datapath 2.0.90, built Sep 30 2013 11:33:05
./ovsdb-tool create /usr/local/etc/openvswitch/conf.db ./vswitch.ovsschema ./ovsdb-server --remote=ptcp:6634 --remote=db:Open_vSwitch,Open_vSwitch,manager_options --pidfile=/home/opf/server.pid --detach ./ovs-vsctl --db=tcp:127.0.0.1:6634 --no-wait init ./ovs-vswitchd tcp:127.0.0.1:6634 --pidfile=/home/opf/switch.pid --log-file=/home/opf/switch.log --detach
On the console I see the following:
1970-01-01T00:01:15Z|00001|vlog|INFO|opened log file /home/opf/switch.log
1970-01-01T00:01:15Z|00002|reconnect|INFO|tcp:127.0.0.1:6634: connecting...
1970-01-01T00:01:15Z|00003|reconnect|INFO|tcp:127.0.0.1:6634: connected
I then enter the command to create a switch ./ovs-vsctl --db=tcp:127.0.0.1:6634 add-br opfbr
I get the following output to the console
device: 'ovs-system': device_add
device ovs-system entered promiscuous mode
device: 'opfbr0': device_add
device opfbr0 entered promiscuous mode
Followed shortly afterwards by a kernel oops.
[root at synergy opf]# Unable to handle kernel paging request at virtual address 8d10051d pgd = dd840000 [8d10051d] *pgd=00000000 Internal error: Oops: 5 [#1] PREEMPT Modules linked in: openvswitch(O)
CPU: 0 Tainted: G O (3.3.0 #7)
PC is at ovs_flow_to_nlattrs+0x5/0x430 [openvswitch] LR is at ovs_flow_cmd_fill_info+0x114/0x208 [openvswitch]
pc : [<bf80524e>] lr : [<bf801669>] psr: 80000033
sp : de273c30 ip : 00000058 fp : 00000018
r10: de36e540 r9 : 0001fffb r8 : dd8b8000
r7 : 00000013 r6 : 000001cd r5 : dd8b8088 r4 : 00000070
r3 : 00000000 r2 : de36e540 r1 : 8d100505 r0 : 0002001b
Flags: Nzcv IRQs on FIQs on Mode SVC_32 ISA Thumb Segment user
Control: 50c5387d Table: 9d840019 DAC: 00000015 Process ovs-vswitchd (pid: 461, stack limit = 0xde2722e8)
Stack: (0xde273c30 to 0xde274000)
...
[<bf80524e>] (ovs_flow_to_nlattrs+0x5/0x430 [openvswitch]) from [<bf801669>] (ovs_flow_cmd_fill_info+0x114/0x208 [openvswitch]) [<bf801669>] (ovs_flow_cmd_fill_info+0x114/0x208 [openvswitch]) from [<bf80179f>] (ovs_flow_cmd_dump+0x42/0x7c [openvswitch]) [<bf80179f>] (ovs_flow_cmd_dump+0x42/0x7c [openvswitch]) from [<c01c90fb>] (netlink_dump+0x3b/0x130) [<c01c90fb>] (netlink_dump+0x3b/0x130) from [<c01c9983>] (netlink_dump_start+0xc7/0x108) [<c01c9983>] (netlink_dump_start+0xc7/0x108) from [<c01cb069>] (genl_rcv_msg+0xc1/0x17c) [<c01cb069>] (genl_rcv_msg+0xc1/0x17c) from [<c01ca9f9>] (netlink_rcv_skb+0x65/0x70) [<c01ca9f9>] (netlink_rcv_skb+0x65/0x70) from [<c01caf9f>] (genl_rcv+0x17/0x20) [<c01caf9f>] (genl_rcv+0x17/0x20) from [<c01ca64f>] (netlink_unicast+0x117/0x150) [<c01ca64f>] (netlink_unicast+0x117/0x150) from [<c01ca871>] (netlink_sendmsg+0x185/0x1cc) [<c01ca871>] (netlink_sendmsg+0x185/0x1cc) from [<c0190e4b>] (sock_sendmsg+0x5f/0x74) [<c0190e4b>] (sock_sendmsg+0x5f/0x74) from [<c01921c1>] (sys_sendto+0x6d/0x80) [<c01921c1>] (sys_sendto+0x6d/0x80) from [<c01921e3>] (sys_send+0xf/0x14) [<c01921e3>] (sys_send+0xf/0x14) from [<c000c521>] (ret_fast_syscall+0x1/0x46)
Code: bf00 e92d 47f0 b086 (698f) ab06
---[ end trace c6309ab77c3d706d ]---
The process I followed to cross-compile the code base is as follows:
./boot.sh
./configure CC=arm-none-linux-gnueabi-gcc --host=arm-none-linux-gnueabi --target=arm-none-linux-gnueabi --build=i686-linux --with-linux=/home/mbozier/synergy/kernel/ti KARCH=arm --disable-ssl CPPFLAGS=-I/home/mbozier/tirootfs/usr/inc-L/home/mbozier/tirootfs/usr/lib
make CROSS_COMPILE="arm-none-linux-gnueabi-" ARCH="arm" KCC="arm-none-linux-gnueabi-gcc" GCC="arm-none-linux-gnueabi-gcc"
The kernel used on the target is built without Open vSwitch support and the 802.1d bridging support is configured to be loaded as a module.
I also tried running the OpenvSwitch kernel module built from the sources distributed with the 3.3 kernel but with no success either.
Can anyone give me any tips as to how to fix this?
Regards
Michele Bozier
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20131001/30d67d83/attachment.html>
More information about the discuss
mailing list