1
0
mirror of https://github.com/systemd/systemd synced 2026-04-07 15:44:49 +02:00

Compare commits

..

No commits in common. "1285252823c9d7766987043ba04eb03cb2b67875" and "21d00e52db110f4413299849330e824ab7f6e558" have entirely different histories.

7 changed files with 7 additions and 37 deletions

View File

@ -358,7 +358,7 @@ void log_forget_fds(void) {
} }
void log_set_max_level(int level) { void log_set_max_level(int level) {
assert(level == LOG_NULL || (level & LOG_PRIMASK) == level); assert((level & LOG_PRIMASK) == level);
log_max_level = level; log_max_level = level;
} }

View File

@ -27,10 +27,6 @@ typedef enum LogTarget{
_LOG_TARGET_INVALID = -EINVAL, _LOG_TARGET_INVALID = -EINVAL,
} LogTarget; } LogTarget;
/* This log level disables logging completely. It can only be passed to log_set_max_level() and cannot be
* used a regular log level. */
#define LOG_NULL (LOG_EMERG - 1)
/* Note to readers: << and >> have lower precedence than & and | */ /* Note to readers: << and >> have lower precedence than & and | */
#define SYNTHETIC_ERRNO(num) (1 << 30 | (num)) #define SYNTHETIC_ERRNO(num) (1 << 30 | (num))
#define IS_SYNTHETIC_ERRNO(val) ((val) >> 30 & 1) #define IS_SYNTHETIC_ERRNO(val) ((val) >> 30 & 1)

View File

@ -19,7 +19,6 @@
#include "journald-kmsg.h" #include "journald-kmsg.h"
#include "journald-server.h" #include "journald-server.h"
#include "journald-syslog.h" #include "journald-syslog.h"
#include "log.h"
#include "parse-util.h" #include "parse-util.h"
#include "process-util.h" #include "process-util.h"
#include "stdio-util.h" #include "stdio-util.h"
@ -107,8 +106,6 @@ void dev_kmsg_record(Server *s, char *p, size_t l) {
char *e, *f, *k; char *e, *f, *k;
uint64_t serial; uint64_t serial;
size_t pl; size_t pl;
int saved_log_max_level = INT_MAX;
ClientContext *c = NULL;
assert(s); assert(s);
assert(p); assert(p);
@ -269,16 +266,10 @@ void dev_kmsg_record(Server *s, char *p, size_t l) {
else { else {
pl -= syslog_parse_identifier((const char**) &p, &identifier, &pid); pl -= syslog_parse_identifier((const char**) &p, &identifier, &pid);
/* Avoid logging any new messages when we're processing messages generated by ourselves via /* Avoid any messages we generated ourselves via
* log_info() and friends to avoid infinite loops. */ * log_info() and friends. */
if (is_us(identifier, pid)) { if (is_us(identifier, pid))
if (!ratelimit_below(&s->kmsg_own_ratelimit)) goto finish;
return;
saved_log_max_level = log_get_max_level();
c = s->my_context;
log_set_max_level(LOG_NULL);
}
if (identifier) { if (identifier) {
syslog_identifier = strjoin("SYSLOG_IDENTIFIER=", identifier); syslog_identifier = strjoin("SYSLOG_IDENTIFIER=", identifier);
@ -296,11 +287,7 @@ void dev_kmsg_record(Server *s, char *p, size_t l) {
if (cunescape_length_with_prefix(p, pl, "MESSAGE=", UNESCAPE_RELAX, &message) >= 0) if (cunescape_length_with_prefix(p, pl, "MESSAGE=", UNESCAPE_RELAX, &message) >= 0)
iovec[n++] = IOVEC_MAKE_STRING(message); iovec[n++] = IOVEC_MAKE_STRING(message);
server_dispatch_message(s, iovec, n, ELEMENTSOF(iovec), NULL, NULL, priority, 0);
server_dispatch_message(s, iovec, n, ELEMENTSOF(iovec), c, NULL, priority, 0);
if (saved_log_max_level != INT_MAX)
log_set_max_level(saved_log_max_level);
finish: finish:
for (j = 0; j < z; j++) for (j = 0; j < z; j++)

View File

@ -65,9 +65,6 @@
#define DEFAULT_RATE_LIMIT_BURST 10000 #define DEFAULT_RATE_LIMIT_BURST 10000
#define DEFAULT_MAX_FILE_USEC USEC_PER_MONTH #define DEFAULT_MAX_FILE_USEC USEC_PER_MONTH
#define DEFAULT_KMSG_OWN_INTERVAL (5 * USEC_PER_SEC)
#define DEFAULT_KMSG_OWN_BURST 50
#define RECHECK_SPACE_USEC (30*USEC_PER_SEC) #define RECHECK_SPACE_USEC (30*USEC_PER_SEC)
#define NOTIFY_SNDBUF_SIZE (8*1024*1024) #define NOTIFY_SNDBUF_SIZE (8*1024*1024)
@ -2215,11 +2212,6 @@ int server_init(Server *s, const char *namespace) {
.runtime_storage.name = "Runtime Journal", .runtime_storage.name = "Runtime Journal",
.system_storage.name = "System Journal", .system_storage.name = "System Journal",
.kmsg_own_ratelimit = {
.interval = DEFAULT_KMSG_OWN_INTERVAL,
.burst = DEFAULT_KMSG_OWN_BURST,
},
}; };
r = set_namespace(s, namespace); r = set_namespace(s, namespace);

View File

@ -16,7 +16,6 @@ typedef struct Server Server;
#include "journald-stream.h" #include "journald-stream.h"
#include "list.h" #include "list.h"
#include "prioq.h" #include "prioq.h"
#include "ratelimit.h"
#include "time-util.h" #include "time-util.h"
#include "varlink.h" #include "varlink.h"
@ -143,7 +142,6 @@ struct Server {
uint64_t *kernel_seqnum; uint64_t *kernel_seqnum;
bool dev_kmsg_readable:1; bool dev_kmsg_readable:1;
RateLimit kmsg_own_ratelimit;
bool send_watchdog:1; bool send_watchdog:1;
bool sent_notify_ready:1; bool sent_notify_ready:1;

View File

@ -3,8 +3,6 @@
set -eux set -eux
set -o pipefail set -o pipefail
echo "g adm - - -" | systemd-sysusers -
U=/run/systemd/system/test12.socket U=/run/systemd/system/test12.socket
cat >$U <<EOF cat >$U <<EOF
[Unit] [Unit]

View File

@ -19,8 +19,7 @@ inspect() {
homectl inspect "$USERNAME" | tee /tmp/a homectl inspect "$USERNAME" | tee /tmp/a
userdbctl user "$USERNAME" | tee /tmp/b userdbctl user "$USERNAME" | tee /tmp/b
# diff uses the grep BREs for pattern matching diff -I '/^\s*Disk (Size|Free|Floor|Ceiling):/' /tmp/{a,b}
diff -I '^\s*Disk \(Size\|Free\|Floor\|Ceiling\):' /tmp/{a,b}
rm /tmp/{a,b} rm /tmp/{a,b}
} }