Skip to Content [alt-c]

Andrew Ayer

Sections

How to Crash Systemd in One Tweet

Comment by Reader Juha Autero

This comment is owned by whoever posted it. I am not responsible for it in any way.

People don't seem to understand how assert works. In release builds assert should be no-op. https://github.com/lattera/glibc/blob/master/assert/assert.h#L44 First of all assert is a debug tool, not error handling mechanism. Secondly, exiting with abort signal isn't very good error handling mechanism for systemd.

On the other hand, arguing that this makes systemd defective is hypocritical considering that Go FAQ says

Go doesn't provide assertions. They are undeniably convenient, but our experience has been that programmers use them as a crutch to avoid thinking about proper error handling and reporting. (https://golang.org/doc/faq#assertions)

| Posted on 2016-09-29 at 11:45:12 UTC by Reader Juha Autero | Reply to This

Post a Reply

Your comment will be public. If you would like to contact me privately, please email me. Please keep your comment on-topic, polite, and comprehensible. Use the "Preview" button to make sure your comment is properly formatted. Name and email address are optional. If you specify an email address it will be kept confidential.

Post Comment


(Optional; will be published)


(Optional; will not be published)


(Optional; will be published)


  • Blank lines separate paragraphs.
  • Lines starting with ">" are indented as block quotes.
  • Lines starting with two spaces are reproduced verbatim.
  • Text surrounded by *asterisks* is italicized.
  • Text surrounded by `back ticks` is monospaced.
  • URLs are turned into links.