[ovs-discuss] Error compiling kernel module for OVS 2.5.0
Luca Prete
luca at onlab.us
Thu Apr 14 01:09:34 UTC 2016
Cool!
I'll give it a try and I'll let you know how it goes.
Thanks
Luca
> Il giorno 13 apr 2016, alle ore 17:03, Joe Stringer <joe at ovn.org> ha scritto:
>
>> On 13 April 2016 at 13:53, Luca Prete <luca at onlab.us> wrote:
>> Hello everyone,
>>
>> I'm trying to install the latest version of OVS (2.5.0)
>>
>> I'm getting some errors when trying to install the kernel module, either
>> when compiling from src or when I create and then install the deb
>> (specifically in this last case the error happens when I do sudo dpkg -i
>> sudo dpkg -i openvswitch-datapath-dkms_2.5.0-1_all.deb)
>>
>> The error I get is the following:
>> make -C /lib/modules/3.16.0-70-generic/build
>> M=/var/lib/dkms/openvswitch/2.5.0/build/datapath/linux modules
>> make[1]: Entering directory `/usr/src/linux-headers-3.16.0-70-generic'
>> CC [M] /var/lib/dkms/openvswitch/2.5.0/build/datapath/linux/actions.o
>> /var/lib/dkms/openvswitch/2.5.0/build/datapath/linux/actions.c: In function
>> ‘ovs_fragment’:
>> /var/lib/dkms/openvswitch/2.5.0/build/datapath/linux/actions.c:730:3:
>> warning: passing argument 1 of ‘v6ops->fragment’ from incompatible pointer
>> type [enabled by default]
>> v6ops->fragment(skb->sk, skb, ovs_vport_output);
>> ^
>> /var/lib/dkms/openvswitch/2.5.0/build/datapath/linux/actions.c:730:3: note:
>> expected ‘struct sk_buff *’ but argument is of type ‘struct sock *’
>> /var/lib/dkms/openvswitch/2.5.0/build/datapath/linux/actions.c:730:3:
>> warning: passing argument 2 of ‘v6ops->fragment’ from incompatible pointer
>> type [enabled by default]
>> /var/lib/dkms/openvswitch/2.5.0/build/datapath/linux/actions.c:730:3: note:
>> expected ‘int (*)(struct sk_buff *)’ but argument is of type ‘struct sk_buff
>> *’
>> /var/lib/dkms/openvswitch/2.5.0/build/datapath/linux/actions.c:730:3: error:
>> too many arguments to function ‘v6ops->fragment’
>> make[2]: ***
>> [/var/lib/dkms/openvswitch/2.5.0/build/datapath/linux/actions.o] Error 1
>> make[1]: *** [_module_/var/lib/dkms/openvswitch/2.5.0/build/datapath/linux]
>> Error 2
>> make[1]: Leaving directory `/usr/src/linux-headers-3.16.0-70-generic'
>> make: *** [default] Error 2
>> make: Leaving directory
>> `/var/lib/dkms/openvswitch/2.5.0/build/datapath/linux'
>>
>> I'm running the following version of Ubuntu:
>> ubuntu:~/ovs$ sudo lsb_release -a
>> No LSB modules are available.
>> Distributor ID: Ubuntu
>> Description: Ubuntu 14.04.4 LTS
>> Release: 14.04
>> Codename: trusty
>>
>> with the following kernel:
>> ubuntu:~/ovs$ sudo uname -a
>> Linux i2-mn-ubuntu 3.16.0-70-generic #90~14.04.1-Ubuntu SMP Wed Apr 6
>> 22:56:34 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
>>
>> Any help would be greatly appreciated.
>
> Hi Luca,
>
> It looks like Ubuntu backported a custom fix into some of their newer
> kernels, leading to this build breakage in conjunction with OVS-2.5.0
> dkms. I didn't see a problem with some 3.16.0-5x versions. If it's
> viable, you can just use the openvswitch module that comes with the
> Ubuntu kernel.
>
> Alternatively to fix it, you'll need to apply this patch to your tree
> (picking up branch-2.5 on github should also fix the issue):
> https://github.com/openvswitch/ovs/commit/a35342879f1a7d8b1503d4945bd0791c58f5fc87
More information about the discuss
mailing list