> -----Original Message-----
> From: [email protected] [mailto:rsyslog-
> [email protected]] On Behalf Of [email protected]
> Sent: Tuesday, July 19, 2011 9:07 AM
> To: rsyslog-users
> Subject: Re: [rsyslog] linking from dlloaded modules to global symbols
> 
> I have access to SIX (and one of these day's I'll get a chance to try
> to
> get rsyslog to compile there again)
> 
> can you make a short test program for me to compile there? I know I
> have
> AIX 5.3 and 6.1 available, and I think I have 5.2 available.

Thanks - I'll try ASAP, but it may take me few days as I think it is not
totally trivial (need to fiddle with autotools, create new project etc -- not
just a simple program).

Rainer

> 
> David Lang
> 
> On Tue, 19 Jul 2011, Rainer Gerhards wrote:
> 
> > Date: Tue, 19 Jul 2011 08:58:30 +0200
> > From: Rainer Gerhards <[email protected]>
> > Reply-To: rsyslog-users <[email protected]>
> > To: rsyslog-users <[email protected]>
> > Subject: [rsyslog] linking from dlloaded modules to global symbols
> >
> > Hi all,
> >
> > I have a question to which some of you may have at least an opinion.
> >
> > A couple of years ago, I read in several guides and textbooks that
> there
> > potentially is a problem in this situation:
> >
> > Let a, b be dlloaded modules. Let a.a and b.b be public symbols in
> these
> > modules, and g.g a public symbol inside rsyslog core (which loads a
> and b).
> > Now assume code in b wants to access a.a and g.g (so the dlloaded
> module
> > needs to resolve public symbols inside the core and other dlloaded
> modules
> > during its load time). Linux handles this without problems, and as it
> looks
> > Solaris and BSD do as well. However, I was told that there are some
> platforms
> > which do not support this (AIX? HP-UX?).
> >
> > In order to keep portable, I created a scheme where b (the dlloaded
> module)
> > queries pointers to all other methods in core and dlloaded modules it
> needs.
> > This works well, but there is some overhead associated with that.
> Obviously,
> > there is a (mild) runtime overhead. But it also causes development
> overhead,
> > as quite some code needs to be written to support that.
> >
> > Looking backward, I have never seen any platform that actually
> requires that
> > scheme. Even "better", I have not followed it in all cases (some
> legacy
> > calls) and I never got into any troubles. May be that's just because
> I don't
> > have AIX and HP-UX and ...
> >
> > The big question is if it really makes sense to continue that way. If
> we can
> > conclude that the problem this code intends to solve is actually no
> problem,
> > I could clean up a lot of code and also get some better development
> > productivity in the future. Also, as far as I know, libtool permits
> static
> > module linking for such cases if a very exotic platform would
> actually not
> > support the dynaload functionality.
> >
> > So I am pretty tempted to drop that approach and use the Linux
> dynalinker's
> > capability. Does anyone have concerns about this? Does it sound
> reasonable?
> >
> > Feedback would deeply be appreciated.
> >
> > Thanks,
> > Rainer
> > _______________________________________________
> > rsyslog mailing list
> > http://lists.adiscon.net/mailman/listinfo/rsyslog
> > http://www.rsyslog.com
> >
> _______________________________________________
> rsyslog mailing list
> http://lists.adiscon.net/mailman/listinfo/rsyslog
> http://www.rsyslog.com
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com

Reply via email to