[syslog-ng] Solaris 10 UDP overflows, message drops

Balazs Scheidler bazsi at balabit.hu
Mon May 2 20:09:12 CEST 2011


On Mon, 2011-05-02 at 13:01 -0400, Mishou Michael wrote:
> I found http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22286 and disabled
> optimization with -O0 in CFLAGS/CPPFLAGS, still getting the same exact
> error.
> 
> I found this which seems to address the problem:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21613.  Seems to only be an
> issue when using -fPIC with GCC 3.4 (I'm using 3.4.6).  I have to use
> -fPIC to use the TLS references (I think).  I'm not sure where to go
> from here, I don't fully understand the workaround in bug 21613 listing
> (at the bottom), I guess I could move to a newer version of GCC?  I'm
> not sure how much I'll break doing that, but it's worth a shot I
> suppose.
> 

Before touching the toolchain (which I don't recommend while porting
ivykis to various platforms and failed miserably), we've patched ivykis
to work on systems the __thread is not available.

I'm not sure if Gergely has prepared the patched ivykis or the upstream
one. (we were exchanging patches with upstream, but not everything was
integrated yet).

The proper version is here:

http://git.balabit.hu/?p=bazsi/ivykis.git;a=summary

which is equivalent to:

git://git.balabit.hu/bazsi/ivykis.git

But if you don't have git, you can grab a tarball from the gitweb
interface, e.g:

http://git.balabit.hu/?p=bazsi/ivykis.git;a=snapshot;h=1d9e413f31e09a2c8212863fa6393f787b318b87

If you still cannot get it to compile, it'd be helpful if you could
include the config.log / config.status files in the syslog-ng root
directory, that should contain lib/ivykis checks too. The most
interesting part is whether it finds support for __thread variables.

Now as I think if it, it probably does, and that's the cause of the
error, since your compiler doesn't really support it (because of the
error), but is able to compile a simple test program.

You could try to edit lib/ivykis/lib/iv_thr.h and add:

#undef HAVE_TLS
#define HAVE_TLS 0

after the config.h header is included.

-- 
Bazsi




More information about the syslog-ng mailing list