Page MenuHomeFreeBSD

Revert "consistently use uprintf() to report weird situations in sigreturn" commit 2e79a216329f6
Needs ReviewPublic

Authored by otis on Dec 4 2021, 3:20 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 20 2023, 8:02 AM
Unknown Object (File)
Aug 16 2023, 8:02 AM
Unknown Object (File)
Jun 19 2023, 2:25 AM
Unknown Object (File)
Jan 16 2023, 10:30 AM
Unknown Object (File)
Dec 24 2022, 9:30 AM
Subscribers

Details

Reviewers
emaste
Summary

Revert and extend 2e79a216329f6 by hiding uprintf() behind #ifdef DEBUG

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 43134
Build 40022: arc lint + arc unit

Event Timeline

otis requested review of this revision.Dec 4 2021, 3:20 PM
In D33257#751783, @kib wrote:

Why?

To avoid these being logged into tty of running process.

In D33257#751806, @otis wrote:
In D33257#751783, @kib wrote:

Why?

To avoid these being logged into tty of running process.

That much I can deduct from the change myself, and logging the event on ctty was the purpose of the change that you reverting. So still, why?

In D33257#751810, @kib wrote:
In D33257#751806, @otis wrote:
In D33257#751783, @kib wrote:

Why?

To avoid these being logged into tty of running process.

That much I can deduct from the change myself, and logging the event on ctty was the purpose of the change that you reverting. So still, why?

My usecase was that poudriere output was clobbered by this message. Nevertheless, looking more closely, I guess that this could be also avoided by adjusting syslog.

In D33257#751827, @otis wrote:

My usecase was that poudriere output was clobbered by this message. Nevertheless, looking more closely, I guess that this could be also avoided by adjusting syslog.

I do not see how doing anything with syslog would change the ctty messages. But, if this comes to poudriere ctty, it is weird, because build should be detached, no? Also, what should the build process do to corrupt its stack?

These uprintf()s are useful in the same way uprintf()s in execve() are, they provide a hint why process was abruptly terminated, without a chance to run any userspace code to correct the state.

One example was pid 46222 comm conftest has trashed its stack, killing. This is presumably coming from an autoconf test in some port(s).