[ibis-macro] Linux ibischk6.1.4 crashes on duplicated symbol?

  • From: Michael Huang <Michael.Huang@xxxxxxxxxx>
  • To: ibis-macro@xxxxxxxxxxxxx
  • Date: Mon, 17 Sep 2018 11:52:22 -0700

Hi,
  I would like to report a case which the latest ibischk6.1.4 crashes (on
Linux).

  The simplified test case is like this:
    -) There is an IBIS file with two models, each of the model contains
its own AMI models (.so files)
    -) These AMI models may be from same vendor. Though they are for Tx and
Rx respectively and names of the .so are different, part of the source
codes they were built from may be the same or share some common libraries
(say "boost" libraries, but versions may be different).

  IbisChk crashes (segmentation fault) when checking this ibs file. The
interesting thing is that if I comment out the [Algorithmic Model] for one
of them...one at a time, then ibischk works fine and the .so file passes
the check for each of them! IbisChk crashes only when both two different
.so files are present in the .ibs file.

  I am thinking there may be symbol collisions or global variable scoping
issue. Maybe the checker's library loading mechanism has set some
limitations (e.g. via RTLD_DEEPBIND or RTLD_LOCAL flags etc). In either
case, the checker should not crash... at least it should exist gracefully.
Is this a bug or are there some extra requirements not stated in the spec.
which model vendors need to follow in order for the .so files to be
demangled correctly (when they are present in the same .ibs file)?

  Thanks for your comments.

Regards,
Wei-hsing
-----------------------------------------------
SPISim:  [www.spisim.com], Free tool: SPILite
EDA expertise in Signal, Power Integrity and SIMulation
-----------------------------------------------

Other related posts: