[Linux-ha-dev] [PATCH] fixed bug in IPv6addr
Dejan Muhamedagic
dejanmm at fastmail.fm
Mon Oct 12 05:03:56 MDT 2009
Hi Kazunori-san,
On Fri, Oct 09, 2009 at 07:17:15PM +0900, Kazunori INOUE wrote:
> Hi,
>
> I found that IPv6addr failed to assign the address in the following
> environments.
> I attached patch for IPv6addr in Cluster Resource Agents
> (changeset:de034cf1e9a1).
>
> 1) environments
> # ifconfig bond0
> bond0 Link encap:Ethernet HWaddr 00:10:18:27:02:D3
> inet6 addr: 2001:db8:91:0:92::181/80 Scope:Global
> [snip]
>
> # ifconfig eth0
> eth0 Link encap:Ethernet HWaddr 00:1A:64:06:59:92
> inet6 addr: 2001:db8:91:0:91::182/64 Scope:Global
> [snip]
>
> # grep ^2001 /proc/net/if_inet6
> 20010db8009100000091000000000182 0e 40 00 80 eth0
> 20010db8009100000092000000000181 0c 50 00 80 bond0
> (* POINT which fails is this order.)
You mean the order of interface list influences the processing?
> 2) IPv6addr start op
> # env | grep OCF_RESKEY
> OCF_RESKEY_ipv6addr=2001:db8:91:0:92::189
> OCF_RESKEY_nic=bond0
> (* OCF_RESKEY_cidr_netmask is not specified intentionally.)
>
> # /usr/lib/ocf/resource.d/heartbeat/IPv6addr start
> # echo $?
> 1
> #
>
> I hope they are helpful to you.
>
> Regards,
> Kazunori INOUE
> diff -urN agents.org/heartbeat/IPv6addr.c agents.mod/heartbeat/IPv6addr.c
> --- agents.org/heartbeat/IPv6addr.c 2009-10-09 15:13:50.000000000 +0900
> +++ agents.mod/heartbeat/IPv6addr.c 2009-10-09 15:19:36.000000000 +0900
> @@ -294,6 +294,7 @@
> /* release the pid file */
> unlink(pid_file);
>
> + cl_log(LOG_DEBUG, "%s %s : %d", getenv("OCF_RESOURCE_INSTANCE"), argv[1], ret);
> return ret;
> }
> int
> @@ -513,7 +514,6 @@
> if (*plen_target!=0 && plen != *plen_target) {
> continue;
> }
> - *plen_target = plen;
>
> /* If interface name provided, only same devname entry
> * would be considered
> @@ -554,6 +554,7 @@
> /* We found it! */
> if (same) {
> fclose(f);
> + *plen_target = plen;
> return devname;
> }
> }
I looked at the code twice, but can't see how this patch would
make the difference. plen doesn't change in that code segment, so
how can moving that assignment make plen_target different. Can
you please explain in more detail.
Cheers,
Dejan
> _______________________________________________________
> Linux-HA-Dev: Linux-HA-Dev at lists.linux-ha.org
> http://lists.linux-ha.org/mailman/listinfo/linux-ha-dev
> Home Page: http://linux-ha.org/
More information about the Linux-HA-Dev
mailing list