> On Sep 22, 2016, at 2:48 PM, Guru Shetty <g...@ovn.org> wrote:
> 
> 
> 
> On 22 September 2016 at 09:54, Flavio Fernandes <fla...@flaviof.com> wrote:
> 
> > On Sep 22, 2016, at 10:59 AM, Guru Shetty <g...@ovn.org> wrote:
> >
> > I think it usually happens because the geneve tunnel exists in the kernel 
> > datapath. The right way to do this is via '/etc/init.d/openvswitch-switch 
> > force-reload-kmod'
> >
> 
> Oh cool. Thanks for showing me 'force-reload-kmod', Guru!
> 
> I can see that using this method requires the .ko file to be at the proper 
> place
> (i.e. /lib/modules/$(uname -r)/kernel//net/openvswitch/openvswitch.ko),
> 
> It does not necessarily have to be at the exact same location. You can add a 
> /etc/depmod.d/openvswitch.conf for alternate locations and do depmod -a.

Ah, I think i see now that the make modules_install place the built .kos in 
.../extra, and how the 'trick' as done in the Vagrantfile points module load 
there [1].
I found this page [2] to make sense of the contents of that .conf file.

> 
> which is a bit
> of a shame, since insmod way would have give us a bit more control.
> The usualy way is to 'make modules_install', depmod -a. have the right 
> dempod.d file and then 'force-reload-kmod'
> 

Just to be clear: you want to do depmod -a 'after' adding the file in the 
depmod.d directory, right?

Learning something new everyday. ;)
Thanks!

-- flaviof

[1]:  
https://github.com/openvswitch/ovs/blob/05bb914854831f58c61343570d8b10d6059646b8/Vagrantfile#L15
[2]:  http://man7.org/linux/man-pages/man5/depmod.d.5.html


> 
> Still good, tho!
> 
> -- flaviof
> 
> 
> > On 22 September 2016 at 01:46, Flavio Fernandes <fla...@flaviof.com> wrote:
> > [cc: Jesse]
> >
> > Hi folks,
> >
> > While playing with branch-2.6, I've noticed that something may not be 
> > cleaned properly
> > in the kernel with openvswitch module; [only] when ovn was configured.
> >
> > What I observe [below] is that as soon as I configure info used by 
> > ovn-controller to
> > connect to sb db, I am unable to unload the ovs kernel module.
> >
> > Any ideas on what commands I could use to further determine what could be 
> > causing
> > this? I did not try it on master, but suspect the issue exists there as 
> > well.
> >
> > Thanks,
> >
> > -- flaviof
> >
> > ==
> >
> > $ lsb_release -sc
> > trusty
> >
> > cd ~/ovs.git
> >
> > ./boot.sh && \
> > ./configure --prefix=/usr --localstatedir=/var  --sysconfdir=/etc \
> >                   --enable-ssl --with-linux=/lib/modules/$(uname -r)/build 
> > && \
> > make -j$(nproc) && \
> > sudo make install ; echo $?
> >
> > for x in libcrc32c nf_conntrack nf_nat nf_nat_ipv6 nf_nat_ipv4 
> > nf_defrag_ipv4 gre ; do \
> >    sudo modprobe $x ; \
> > done
> >
> > sudo insmod ./datapath/linux/openvswitch.ko && \
> > sudo insmod ./datapath/linux/vport-geneve.ko && \
> > echo ok
> >
> > sudo cp ./debian/openvswitch-switch.init /etc/init.d/openvswitch-switch
> >
> > sudo /etc/init.d/openvswitch-switch start
> > sudo /usr/share/openvswitch/scripts/ovn-ctl restart_northd
> > sudo /usr/share/openvswitch/scripts/ovn-ctl restart_controller
> >
> > #### insert commands that configure conf.db with OVN related commands
> > #### to make issue happen :/
> >
> > sudo /usr/share/openvswitch/scripts/ovn-ctl stop_controller
> > sudo /usr/share/openvswitch/scripts/ovn-ctl stop_northd
> > sudo /etc/init.d/openvswitch-switch stop
> >
> > # as you can see there is nothing related to ovs running...
> > $ ps aux | grep "ov[sn]"
> > $
> >
> > $ sudo rmmod vport_geneve
> > $
> >
> > # Happy case...
> > $ # this works fine if commands that configure conf.db with ovn are not 
> > used...
> > $ sudo rmmod openvswitch
> > $ sudo lsmod | grep openv
> > $
> >
> > ==
> >
> > # However, not as nice if conf.db is configured with encaps info:
> > $ sudo rmmod openvswitch
> > rmmod: ERROR: Module openvswitch is in use
> >
> > $ sudo lsmod | grep openv
> > openvswitch           253098  2
> > gre                    13796  1 openvswitch
> > nf_defrag_ipv4         12758  2 openvswitch,nf_conntrack_ipv4
> > nf_nat_ipv4            13263  1 openvswitch
> > nf_defrag_ipv6         34768  2 openvswitch,nf_conntrack_ipv6
> > nf_nat_ipv6            13279  1 openvswitch
> > nf_nat                 21841  3 openvswitch,nf_nat_ipv4,nf_nat_ipv6
> > nf_conntrack           97201  6 
> > openvswitch,nf_nat,nf_nat_ipv4,nf_nat_ipv6,nf_conntrack_ipv4,nf_conntrack_ipv6
> > libcrc32c              12644  1 openvswitch
> >
> > $ sudo modprobe --show-depends openvswitch
> > insmod /lib/modules/3.13.0-95-generic/kernel/lib/libcrc32c.ko
> > insmod /lib/modules/3.13.0-95-generic/kernel/net/ipv4/gre.ko
> > insmod /lib/modules/3.13.0-95-generic/kernel/net/ipv4/ip_tunnel.ko
> > insmod /lib/modules/3.13.0-95-generic/kernel/drivers/net/vxlan.ko
> > insmod /lib/modules/3.13.0-95-generic/kernel/net/openvswitch/openvswitch.ko
> >
> >
> > #### commands that configure conf.db with OVN related commands to make 
> > rmmod fail
> >
> > HOST_IP=$(ip -4 addr show eth0 | grep -oP "(?<=inet ).*(?=/)")
> > OVN_DB_IP=$HOST_IP
> > OVN_SB_DB_PORT=${2-6642}
> > OVN_SB_REMOTE="tcp:${OVN_DB_IP}:${OVN_SB_DB_PORT}"
> > sudo ovs-vsctl --no-wait set open_vswitch . external-ids:ovn-bridge="br-int"
> > sudo ovs-vsctl --no-wait set open_vswitch . 
> > external-ids:ovn-encap-ip="$HOST_IP"
> > sudo ovs-vsctl --no-wait set open_vswitch . 
> > external-ids:ovn-encap-type="geneve"
> > sudo ovs-vsctl --no-wait set open_vswitch . 
> > external-ids:ovn-remote="$OVN_SB_REMOTE"
> >
> >
> >
> > _______________________________________________
> > discuss mailing list
> > discuss@openvswitch.org
> > http://openvswitch.org/mailman/listinfo/discuss
> >
> >
> 
> 

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

_______________________________________________
discuss mailing list
discuss@openvswitch.org
http://openvswitch.org/mailman/listinfo/discuss

Reply via email to