On 10/16/2015 01:55 PM, Saurabh Mohan wrote:
On 10/16/2015 11:32 AM, Ansis Atteka wrote:
On Thu, Oct 15, 2015 at 4:52 PM, Saurabh Mohan
<saur...@cplanenetworks.com> wrote:
On 10/15/2015 01:55 PM, Ansis Atteka wrote:

On Wed, Oct 14, 2015 at 5:33 PM, Saurabh Mohan
<saur...@cplanenetworks.com> wrote:

On 10/14/2015 04:58 PM, Ansis Atteka wrote:


On Wed, Oct 14, 2015 at 4:08 PM, Ben Pfaff <b...@nicira.com> wrote:


On Wed, Oct 14, 2015 at 03:28:24PM -0700, Joe Stringer wrote:


On 14 October 2015 at 15:21, Ben Pfaff <b...@nicira.com> wrote:


On Tue, Oct 06, 2015 at 04:35:32PM -0700, Saurabh Mohan wrote:


On Ubuntu depmod's search priority is configured in /etc/depmod to
be
updates and then the kernel built-in directory.
$ cat /etc/depmod.d/ubuntu.conf
search updates ubuntu built-in

Thus change the placement of openvswitch.ko under updates/ not
kernel/updates.

Signed-off-by: Saurabh Mohan <saur...@cplanenetworks.com>



This appears to be correct, but I'm confused about how this could
have
not been noticed for years.  Did something change recently?



We recently changed it from kernel/ to kernel/updates (prior to v2.4
release), and the commit message suggests it was previously
nondeterministic:

commit b519432205c36bda5c7331f77a49eaaa919967ad
Author: Ansis Atteka <aatt...@nicira.com>
Date:   Tue May 26 16:49:49 2015 -0700

        debian: install openvswitch kernel module under "updates"
directory

        This patch fixes a bug where "modprobe openvswitch" command on
Ubuntu
        distribution would have sometimes tried to load OVS kernel
module
that
        shipped together with Linux Kernel, even though one had also
installed
        OVS datapath debian package created with module-assistant.
Because
of
        this issue force-reload-kmod command occasionally malfunctioned
and
        failed to load the right kernel module.

        This bug happened *occasionally* because the default Ubuntu
depmod
        configuration in /etc/depmod.d/ubuntu.conf is set to look for
kernel
        modules first in "updates" directory, then in "ubuntu" directory
and
        then in other directories.  If there were two openvswitch.ko
modules
        in "other directories", then modprobe would have loaded kernel
        module that was nondeterministically listed first by file
system.



OK, I understand why it was nondeterministic before, but where does
kernel/updates come in then, since it seems to be different from and
not
as high-priority as "updates"?  Does anyone know?



I am still trying to find the answer in my email history why I ended
up using "kernel/updates" over "updates".

Saurabh, did you encounter an issue where the wrong kernel module was
loaded or is this to achieve conformance?


Anis, we tried using this  patch but still noticed that the wrong kernel
module was getting selected. The only way to fix it was
to put the module outside kernel/ directory.



Can you give me locations of all ovs kernel modules (dkms,
module-assistant and the one that came with linux) present in
/lib/modules/<linux_version>/ on your system that was having trouble?

root@test01-1:/lib/modules# find . -name openvswitch.ko -print
./3.13.0-32-generic/kernel/net/openvswitch/openvswitch.ko
./3.13.0-32-generic/updates/openvswitch.ko

I am just wondering why my patch prioritized module-assistant created
kernel module (in kernel/updates) over the one that comes with linux
kernel itself. I guess this is the problem you are seeing here again,
right?

yes, we were seeing the same problem.
my observation was that if we put the module under directory
<kernel>/updates then depmod would still select
<kernel>/net/openvswitch/openvswitch.ko

Ok, give me some time to test this on Debian as well, because IIRC
Debian does not have /etc/depmod.conf file and I am not sure what is
the exact depmod logic there. Assuming it will work there I will push
your patch.

thanks.

i tried debian jessie, uname -r == 3.16.0-4. it does not have /etc/depmod.d/*conf. I was able to confirm that depmod -a does select /lib/modules/<ker-ver>/updates/openvswitch.ko
over /lib/moduels/<ker-ver>/kernel/net/openvswitch/openvswitch.ko

it looks like the patch would work for both debian and ubuntu.
thanks.


Also, what Ubuntu distribution are you on? I remember that my patch
allegedly helped to solve the undeterministic kernel loading behavior
on Ubuntu 14.04.

I am on Ubuntu 14.04 LTS also.


Thanks, for reporting and proposing solution to this problem!

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

Reply via email to