Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DRC crash #909

Closed
mguthaus opened this issue Sep 20, 2021 · 3 comments · Fixed by #911
Closed

DRC crash #909

mguthaus opened this issue Sep 20, 2021 · 3 comments · Fixed by #911
Assignees
Milestone

Comments

@mguthaus
Copy link

I am trying to run DRC with the MOSIS SCMOS DRC deck but I get the following crash. My command line and design are included: klayout -b -r drc_SCMOS.lydrc -rd input=pinv.gds

ERROR: Signal number: 11
Address: 0x30
Program Version: KLayout 0.27.1 (2021-06-01 r5ccd9990)

Backtrace:
/usr/local/klayout/libklayout_lay.so.0 +0x2cf537 lay::enable_signal_handler_gui(bool) [??:?]
/lib/x86_64-linux-gnu/libc.so.6 +0x46210 killpg [??:?]
/usr/local/klayout/libklayout_db.so.0 +0x5d8b7c db::Cell::begin_child_cells() const [??:?]
/usr/local/klayout/libklayout_db.so.0 +0x5dc6bd db::Cell::collect_called_cells(std::set<unsigned int, std::less, std::allocator >&, int) const [??:?]
/usr/local/klayout/libklayout_db.so.0 +0x110bff4 db::OriginalLayerRegion::count() const [??:?]
/usr/local/klayout/libklayout_db.so.0 +0x10fb041 db::AsIfFlatRegion::add(db::Region const&) const [??:?]
/usr/local/klayout/libklayout_db.so.0 +0xeec37c db::Region::operator+(db::Region const&) const [??:?]
/usr/local/klayout/libklayout_db.so.0 +0xf0a7db void std::vector<db::Region, std::allocatordb::Region >::emplace_backdb::Region(db::Region&&) [??:?]
/usr/local/klayout/libklayout_gsi.so.0 +0x63438 gsi::VariantUserClassImpl::execute_gsi(tl::ExpressionParserContext const&, tl::Variant&, tl::Variant&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::vector<tl::Variant, std::allocatortl::Variant > const&) const [??:?]
/usr/local/klayout/libklayout_gsi.so.0 +0x61d96 gsi::VariantUserClassImpl::execute(tl::ExpressionParserContext const&, tl::Variant&, tl::Variant&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::vector<tl::Variant, std::allocatortl::Variant > const&) const [??:?]
/usr/local/klayout/libklayout_tl.so.0 +0x6d2d6 tl::MethodExpressionNode::execute(tl::EvalTarget&) const [??:?]
/usr/local/klayout/libklayout_tl.so.0 +0x6bace tl::StaticFunctionExpressionNode::execute(tl::EvalTarget&) const [??:?]
/usr/local/klayout/libklayout_tl.so.0 +0x5f4d8 tl::Expression::execute() const [??:?]
/usr/local/klayout/libklayout_db.so.0 +0xaf77e9 db::TilingProcessor::execute(std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&) [??:?]
/usr/local/klayout/libklayout_tl.so.0 +0xb43bb tl::Worker::run() [??:?]
/lib/x86_64-linux-gnu/libQt5Core.so.5 +0xbe9d2 QThread::setTerminationEnabled(bool) [??:?]
/lib/x86_64-linux-gnu/libpthread.so.0 +0x9609 start_thread [??:?]
/lib/x86_64-linux-gnu/libc.so.6 +0x122293 clone [??:?]

pinv_example.zip

@mguthaus
Copy link
Author

mguthaus commented Sep 20, 2021

This is the most recent klayout results (with debug symbols):

ERROR: Signal number: 11
Address: 0x30
Program Version: KLayout 0.27.4 (2021-09-20 r29384bf3f)

Backtrace:
/usr/local/klayout/libklayout_lay.so.0 +0x57fb7f lay::signal_handler(int, siginfo_t*, void*) [laySignalHandler.cc:291]
/lib/x86_64-linux-gnu/libc.so.6 +0x46210 killpg [??:?]
/usr/local/klayout/libklayout_db.so.0 +0xf2c37a db::Cell::begin_child_cells() const [dbCell.cc:438]
/usr/local/klayout/libklayout_db.so.0 +0xf2c8e1 db::Cell::collect_called_cells(std::set<unsigned int, std::less, std::allocator >&, int) const [dbCell.cc:532]
/usr/local/klayout/libklayout_db.so.0 +0xf2c8a0 db::Cell::collect_called_cells(std::set<unsigned int, std::less, std::allocator >&) const [dbCell.cc:526]
/usr/local/klayout/libklayout_db.so.0 +0x1d4a9e2 db::OriginalLayerRegion::count() const [dbOriginalLayerRegion.cc:217]
/usr/local/klayout/libklayout_db.so.0 +0x1d3d9e7 db::AsIfFlatRegion::add(db::Region const&) const [dbAsIfFlatRegion.cc:1625 (discriminator 3)]
/usr/local/klayout/libklayout_db.so.0 +0xfcc5ef db::Region::operator+(db::Region const&) const [dbRegion.h:1076]
/usr/local/klayout/libklayout_db.so.0 +0x1b66590 gsi::ConstMethod1<db::Region, db::Region, db::Region const&, gsi::arg_default_return_value_preference>::call(void*, gsi::SerialArgs&, gsi::SerialArgs&) const [gsiMethodsVar.h:303 (discriminator 5)]
/usr/local/klayout/libklayout_gsi.so.0 +0xf5bfb gsi::VariantUserClassImpl::execute_gsi(tl::ExpressionParserContext const&, tl::Variant&, tl::Variant&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::vector<tl::Variant, std::allocatortl::Variant > const&) const [gsiExpression.cc:1536]
/usr/local/klayout/libklayout_gsi.so.0 +0xf4351 gsi::VariantUserClassImpl::execute(tl::ExpressionParserContext const&, tl::Variant&, tl::Variant&, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, std::vector<tl::Variant, std::allocatortl::Variant > const&) const [gsiExpression.cc:1322]
/usr/local/klayout/libklayout_tl.so.0 +0x11fa25 tl::MethodExpressionNode::execute(tl::EvalTarget&) const [tlExpression.cc:2052]
/usr/local/klayout/libklayout_tl.so.0 +0x1204c9 tl::StaticFunctionExpressionNode::execute(tl::EvalTarget&) const [tlExpression.cc:2196]
/usr/local/klayout/libklayout_tl.so.0 +0x108086 tl::Expression::execute(tl::EvalTarget&) const [tlExpression.cc:3123]
/usr/local/klayout/libklayout_tl.so.0 +0x107fd1 tl::Expression::execute() const [tlExpression.cc:3114]
/usr/local/klayout/libklayout_db.so.0 +0x16c227a db::TilingProcessorWorker::do_perform(db::TilingProcessorTask const*) [dbTilingProcessor.cc:599 (discriminator 1)]
/usr/local/klayout/libklayout_db.so.0 +0x16c755d db::TilingProcessorWorker::perform_task(tl::Task*) [dbTilingProcessor.cc:446]
/usr/local/klayout/libklayout_tl.so.0 +0x187e71 tl::Worker::run() [tlThreadedWorkers.cc:612]
/lib/x86_64-linux-gnu/libQt5Core.so.5 +0xbe9d2 QThread::setTerminationEnabled(bool) [??:?]
/lib/x86_64-linux-gnu/libpthread.so.0 +0x9609 start_thread [??:?]
/lib/x86_64-linux-gnu/libc.so.6 +0x122293 clone [??:?]

@klayoutmatthias
Copy link
Collaborator

Hi Matt,

thanks for the test case and the stack trace. I'll try to debug that.

Best regards,

Matthias

klayoutmatthias added a commit that referenced this issue Sep 21, 2021
@klayoutmatthias
Copy link
Collaborator

Hi Matt,

I could debug and fix the issue. I'm afraid there is no quick workaround, but I'll release the fix with 0.27.4 soon.

Matthias

@klayoutmatthias klayoutmatthias self-assigned this Sep 21, 2021
@klayoutmatthias klayoutmatthias added this to the 0.27.4 milestone Sep 21, 2021
@klayoutmatthias klayoutmatthias linked a pull request Sep 21, 2021 that will close this issue
klayoutmatthias added a commit that referenced this issue Sep 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants