[ovs-dev] [PATCHv3.1] Add support for LISP tunneling

Lori Jakab lojakab at cisco.com
Fri Feb 22 13:03:14 UTC 2013


On 02/22/13 02:10, Jesse Gross wrote:
> On Thu, Feb 21, 2013 at 1:42 AM, Lori Jakab <lojakab at cisco.com> wrote:
>> On 02/21/13 00:50, Jesse Gross wrote:
>>> On Wed, Feb 20, 2013 at 2:33 AM, Lorand Jakab <lojakab at cisco.com> wrote:
>>>> LISP is an experimental layer 3 tunneling protocol, described in RFC
>>>> 6830.  This patch adds support for LISP tunneling.  Since LISP
>>>> encapsulated packets do not carry an Ethernet header, it is removed
>>>> before encapsulation, and added with hardcoded source and destination
>>>> MAC addresses after decapsulation.  The harcoded MAC chosen for this
>>>> purpose is the locally administered address 02:00:00:00:00:00.  Flow
>>>> actions can be used to rewrite this MAC for correct reception.  As such,
>>>> this patch is intended to be used for static network configurations, or
>>>> with a LISP capable controller.
>>>>
>>>> Signed-off-by: Lorand Jakab <lojakab at cisco.com>
>>>> Signed-off-by: Kyle Mestery <kmestery at cisco.com>
>>>
>>> I'm still getting some sparse warnings, can you take a look?:
>>>
>>>   CHECK   /home/jgross/openvswitch/datapath/linux/vport-lisp.c
>>> /home/jgross/openvswitch/datapath/linux/vport-lisp.c:177:18: warning:
>>> restricted __be64 degrades to integer
>>> /home/jgross/openvswitch/datapath/linux/vport-lisp.c:177:51: warning:
>>> restricted __be64 degrades to integer
>>> /home/jgross/openvswitch/datapath/linux/vport-lisp.c:178:18: warning:
>>> restricted __be64 degrades to integer
>>> /home/jgross/openvswitch/datapath/linux/vport-lisp.c:177:80: warning:
>>> incorrect type in return expression (different base types)
>>> /home/jgross/openvswitch/datapath/linux/vport-lisp.c:177:80:
>>> expected restricted __be64
>>> /home/jgross/openvswitch/datapath/linux/vport-lisp.c:177:80:    got
>>> unsigned long long
>>
>> I tried reproducing this using sparse 0.4.3, 0.4.4, and latest git, on
>> Gentoo and Fedora (but I don't think distribution matters), against a
>> 3.7 and a 3.8 kernel, with `make C=1`.  Neither combination generated
>> the above warnings for me.  Can you please describe your setup, so that
>> I can try reproducing and then fixing these warnings?
> 
> I run with all the flags turned up, so that's probably the difference:
> make C=2 CF="-Wsparse-all -D__CHECK_ENDIAN__"

Thanks Jesse, I could now reproduce and fix the warnings.  Will send a
new patch in a moment.

-Lori



More information about the dev mailing list