Nicolas, Roland can state the exact reason for the design choice but
as far as I know it was an explicit choice *not* to use interposers.
There are a couple of warnings in his notes to verify for each update
that no interposing *must* happen.

Olga

On Fri, Apr 23, 2010 at 1:41 AM, Nicolas Williams
<nicolas.willi...@oracle.com> wrote:
> On Thu, Apr 22, 2010 at 05:32:09PM -0600, bugmail-sen...@sun.com wrote:
>> *Synopsis*: mail delivery hangs due to ksh93, via AST, using an old and slow 
>> getcwd() algorithm
>>
>> CR 6946515 changed on Apr 22 2010 by <User 1-5Q-101>
>>
>> === Field ============ === New Value ============= === Old Value 
>> =============
>>
>> Evaluation             New Note
>> ====================== =========================== 
>> ===========================
>
> The evaluation says that libc's getcwd() uses malloc (when the pathname
> argument is NULL), and since AST's malloc() does not actually interpose
> on libc's malloc(), getcwd() will end up using libc's malloc, which
> creates problems (the note refers to AST's malloc being async-signal-
> safe while libc's isn't).
>
> That's not a big deal since _ast_getcwd() can just allocate its own
> buffer and then call the real getcwd() with that.
>
> However, this brings up a different issue: why are the AST libc
> replacements not interposers?  Why are are the AST libc replacements
> simply CPP renames of the function names?
>
> It's generally dangerous to have more than one allocator in use in a
> process.  For ksh93, being so tightly coupled with libast, that's not an
> issue, but I suspect eventually this will bite someone.
>
> Nico
> --
> _______________________________________________
> ksh93-integration-discuss mailing list
> ksh93-integration-discuss@opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/ksh93-integration-discuss
>



-- 
      ,   _                                    _   ,
     { \/`o;====-    Olga Kryzhanovska   -====;o`\/ }
.----'-/`-/     olga.kryzhanov...@gmail.com   \-`\-'----.
 `'-..-| /     Solaris/BSD//C/C++ programmer   \ |-..-'`
      /\/\                                     /\/\
      `--`                                      `--`
_______________________________________________
ksh93-integration-discuss mailing list
ksh93-integration-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/ksh93-integration-discuss

Reply via email to