Bug#417835: heartbeat: IPv6addr fails on etch
On Wed, Apr 04, 2007 at 09:10:02PM +0200, Philipp Kolmann wrote: > Package: heartbeat > Version: 1.2.5-3 > Severity: important > > Hi, > > today I upgraded my cluster to etch and wanted to test the failover settings > but this completely failed. After some debugging I found out, that the > IPv6addr script fails. > > Looking deeper into this issue, it seems that the function is_addr6_available > checks the reply for a ICMPV6_ECHO_REQUEST but fails here: > > if (0 != memcmp(&local, &addr.sin6_addr,sizeof(local))) { > > It seems that in etch addr.sin6_addr isn't '::1'. > > I tried it with a sarge test system and there it works. (addr.sin6_addr == > '::1'). > > I am not sure if this is a heartbeat or kernel problem, but a fix would be > very welcome. > > Tell me, if you need any info to help fix this issue. Hi Philipp, thanks for pointing this out. I did a quick check of is_addr6_available() in the linux-ha 2.0 tree and it seems that this local check has been removed all together - though I am not sure why. I wonder if this would also be a good apprach to take to side-step the problem that you have found in 1.2.5. The (untested) patch belows shows what I am thinking about. Is it possible for you to see if this solves the problem that you are seeing? I have CCed the linux-ha-dev list, so the linux-ha developers can pass their eyes over this. Its a subscriber only list. For the linux-ha people, this (Debian) bug can be seen at http://bugs.debian.org/417835, and posting to [EMAIL PROTECTED] will log against it. -- Horms H: http://www.vergenet.net/~horms/ W: http://www.valinux.co.jp/en/ -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#417835: heartbeat: IPv6addr fails on etch
On Wed, Apr 04, 2007 at 04:47:32PM -0700, Simon Horman wrote: > On Wed, Apr 04, 2007 at 09:10:02PM +0200, Philipp Kolmann wrote: > > Package: heartbeat > > Version: 1.2.5-3 > > Severity: important > > > > Hi, > > > > today I upgraded my cluster to etch and wanted to test the failover settings > > but this completely failed. After some debugging I found out, that the > > IPv6addr script fails. > > > > Looking deeper into this issue, it seems that the function > > is_addr6_available > > checks the reply for a ICMPV6_ECHO_REQUEST but fails here: > > > > if (0 != memcmp(&local, &addr.sin6_addr,sizeof(local))) { > > > > It seems that in etch addr.sin6_addr isn't '::1'. > > > > I tried it with a sarge test system and there it works. (addr.sin6_addr == > > '::1'). > > > > I am not sure if this is a heartbeat or kernel problem, but a fix would be > > very welcome. > > > > Tell me, if you need any info to help fix this issue. > > Hi Philipp, > > thanks for pointing this out. I did a quick check of > is_addr6_available() in the linux-ha 2.0 tree and it seems that this > local check has been removed all together - though I am not sure why. I > wonder if this would also be a good apprach to take to side-step the > problem that you have found in 1.2.5. > > The (untested) patch belows shows what I am thinking about. > Is it possible for you to see if this solves the problem that you are > seeing? > > I have CCed the linux-ha-dev list, so the linux-ha developers can > pass their eyes over this. Its a subscriber only list. > > For the linux-ha people, this (Debian) bug can be seen at > http://bugs.debian.org/417835, and posting to > [EMAIL PROTECTED] will log against it. Hi Simon, thanks for looking into this. I did some more testing yesterday and today and found the same like you. My problem now after disabling the local check is, that in send_ua at "if (libnet_write(l) == -1)" I get the following glibc error: *** glibc detected *** free(): invalid next size (fast): 0x005042e0 *** Aborted in gdb I get the following bt: *** glibc detected *** free(): invalid next size (fast): 0x005042e0 *** Program received signal SIGABRT, Aborted. [Switching to Thread 47816971899424 (LWP 27541)] 0x2b7d413c907b in raise () from /lib/libc.so.6 (gdb) bt #0 0x2b7d413c907b in raise () from /lib/libc.so.6 #1 0x2b7d413ca84e in abort () from /lib/libc.so.6 #2 0x2b7d413ff629 in __fsetlocking () from /lib/libc.so.6 #3 0x2b7d41406193 in mallopt () from /lib/libc.so.6 #4 0x2b7d4140621e in free () from /lib/libc.so.6 #5 0x2b7d41290b6b in libnet_write () from /usr/lib/libnet.so.1 #6 0x00401c74 in send_ua (src_ip=0x7fff69b7f360, if_name=) at IPv6addr.c:372 #7 0x004026a9 in main (argc=, argv=) at IPv6addr.c:261 The IP Adress is set correctly, but the checks to verify fail. For your information the ldd of the binary: ldd .libs/IPv6addr libplumb.so.0 => /usr/lib/libplumb.so.0 (0x2b43ed141000) libglib-1.2.so.0 => /usr/lib/libglib-1.2.so.0 (0x2b43ed255000) libnet.so.1 => /usr/lib/libnet.so.1 (0x2b43ed38) libc.so.6 => /lib/libc.so.6 (0x2b43ed499000) libuuid.so.1 => /lib/libuuid.so.1 (0x2b43ed6d6000) librt.so.1 => /lib/librt.so.1 (0x2b43ed7da000) libdl.so.2 => /lib/libdl.so.2 (0x2b43ed8e3000) /lib64/ld-linux-x86-64.so.2 (0x2b43ed029000) libpthread.so.0 => /lib/libpthread.so.0 (0x2b43ed9e6000) Thanks for any help Philipp Kolmann -- The more I learn about people, the more I like my dog! -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]
Bug#417835: heartbeat: IPv6addr fails on etch
Package: heartbeat Version: 1.2.5-3 Severity: important Hi, today I upgraded my cluster to etch and wanted to test the failover settings but this completely failed. After some debugging I found out, that the IPv6addr script fails. Looking deeper into this issue, it seems that the function is_addr6_available checks the reply for a ICMPV6_ECHO_REQUEST but fails here: if (0 != memcmp(&local, &addr.sin6_addr,sizeof(local))) { It seems that in etch addr.sin6_addr isn't '::1'. I tried it with a sarge test system and there it works. (addr.sin6_addr == '::1'). I am not sure if this is a heartbeat or kernel problem, but a fix would be very welcome. Tell me, if you need any info to help fix this issue. thanks Philipp Kolmann -- System Information: Debian Release: 4.0 APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Shell: /bin/sh linked to /bin/bash Kernel: Linux 2.6.18-4-amd64 Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1) Versions of packages heartbeat depends on: ii adduser 3.102 Add and remove users and groups ii iproute 20061002-3 Professional tools to control the ii iputils- 3:20020927-6Tools to test the reachability of ii libc62.3.6.ds1-13GNU C Library: Shared libraries ii libglib1 1.2.10-17 The GLib library of C routines ii libnet1 1.1.2.1-2 library for the construction and h ii libpils0 1.2.5-3 Plugin and Interface Loading Syste ii libsenso 1:2.10.1-3 library to read temperature/voltag ii libsnmp9 5.2.3-7 NET SNMP (Simple Network Managemen ii libssl0. 0.9.8c-4SSL shared libraries ii libstoni 1.2.5-3 Interface for remotely powering do ii libuuid1 1.39+1.40-WIP-2006.11.14+dfsg-2 universally unique id library ii libwrap0 7.6.dbs-13 Wietse Venema's TCP wrappers libra ii psmisc 22.3-1 Utilities that use the proc filesy ii python 2.4.4-2 An interactive high-level object-o ii python-c 0.5.12 register and build utility for Pyt Versions of packages heartbeat recommends: ii iptables1.3.6.0debian1-5 administration tools for packet fi ii logrotate 3.7.1-3 Log rotation utility ii sysklogd [system-log-da 1.4.1-18 System Logging Daemon -- no debconf information -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]