Hello community, here is the log from the commit of package systemd for openSUSE:Factory checked in at 2018-01-17 21:43:54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/systemd (Old) and /work/SRC/openSUSE:Factory/.systemd.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "systemd" Wed Jan 17 21:43:54 2018 rev:268 rq:566373 version:234 Changes: -------- --- /work/SRC/openSUSE:Factory/systemd/systemd-mini.changes 2018-01-13 21:34:43.158235092 +0100 +++ /work/SRC/openSUSE:Factory/.systemd.new/systemd-mini.changes 2018-01-17 21:43:55.951585177 +0100 @@ -1,0 +2,22 @@ +Tue Jan 16 10:23:22 UTC 2018 - [email protected] + +- Import commit cc94ce8513221061898c83f57862544b16021f0e + + aa3eba828 delta: don't ignore PREFIX when the given argument is PREFIX/SUFFIX + b1ea0173a delta: extend skip logic to work on full directory paths (prefix+suffix) (bsc#1070428) + 77c5065f9 delta: check if a prefix needs to be skipped only once + db32866d1 Fix parsing of features in detect_vm_xen_dom0 (#7890) (bsc#1048510) + 11d40461a sd-bus: use -- when passing arguments to ssh (#6706) + 1148d99f6 tmpfiles: consider /etc uninitialized also when /etc/machine-id is present but empty (#7849) (bsc#1075179) + 3a95f69bf tmpfiles: downgrade warning about duplicate line + +------------------------------------------------------------------- +Fri Jan 12 12:27:52 UTC 2018 - [email protected] + +- Edit scripts-systemd-fix-machines-btrfs-subvol.sh + + We shouldn't be creating a /var/lib/machines subvolume if /var is + already a seperate partition or subvolume. /var/lib/machines will + already be excluded from snapper & similar tooling in this case. + +------------------------------------------------------------------- systemd.changes: same change ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ systemd.spec: same change ++++++ scripts-systemd-fix-machines-btrfs-subvol.sh ++++++ --- /var/tmp/diff_new_pack.pn2f7t/_old 2018-01-17 21:43:57.183527512 +0100 +++ /var/tmp/diff_new_pack.pn2f7t/_new 2018-01-17 21:43:57.183527512 +0100 @@ -75,6 +75,18 @@ fi # +# If there is already an entry in fstab for /var, it means that: +# +# - the system has a seperate /var subvolume (default from Feb 2018) +# - the system has a seperate /var partition +# +# In any case we should exit +# +if mount --fake /var 2>/dev/null; then + exit +fi + +# # If something is already mounted don't try to fix anything, it's been # done manually by the sysadmin. # ++++++ systemd-234.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/systemd-234/src/basic/virt.c new/systemd-234/src/basic/virt.c --- old/systemd-234/src/basic/virt.c 2018-01-10 12:03:54.000000000 +0100 +++ new/systemd-234/src/basic/virt.c 2018-01-16 11:22:50.000000000 +0100 @@ -239,8 +239,8 @@ if (r == 0) { unsigned long features; - r = safe_atolu(domcap, &features); - if (r == 0) { + r = sscanf(domcap, "%lx", &features); + if (r == 1) { r = !!(features & (1U << XENFEAT_dom0)); log_debug("Virtualization XEN, found %s with value %08lx, " "XENFEAT_dom0 (indicating the 'hardware domain') is%s set.", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/systemd-234/src/delta/delta.c new/systemd-234/src/delta/delta.c --- old/systemd-234/src/delta/delta.c 2018-01-10 12:03:54.000000000 +0100 +++ new/systemd-234/src/delta/delta.c 2018-01-16 11:22:50.000000000 +0100 @@ -391,19 +391,28 @@ return 0; } -static int should_skip_prefix(const char* p) { +static bool should_skip_path(const char *prefix, const char *suffix) { #ifdef HAVE_SPLIT_USR - int r; _cleanup_free_ char *target = NULL; + const char *p; + char *dirname; - r = chase_symlinks(p, NULL, 0, &target); - if (r < 0) - return r; + dirname = strjoina(prefix, "/", suffix); - return !streq(p, target) && nulstr_contains(prefixes, target); -#else - return 0; + if (chase_symlinks(dirname, NULL, 0, &target) < 0) + return false; + + NULSTR_FOREACH(p, prefixes) { + if (path_startswith(dirname, p)) + continue; + + if (path_equal(target, strjoina(p, "/", suffix))) { + log_debug("%s redirects to %s, skipping.", dirname, target); + return true; + } + } #endif + return false; } static int process_suffix(const char *suffix, const char *onlyprefix) { @@ -433,14 +442,8 @@ NULSTR_FOREACH(p, prefixes) { _cleanup_free_ char *t = NULL; - int skip; - skip = should_skip_prefix(p); - if (skip < 0) { - r = skip; - goto finish; - } - if (skip) + if (should_skip_path(p, suffix)) continue; t = strjoin(p, "/", suffix); @@ -519,19 +522,12 @@ /* Strip prefix from the suffix */ NULSTR_FOREACH(p, prefixes) { const char *suffix; - int skip; - - skip = should_skip_prefix(p); - if (skip < 0) - return skip; - if (skip) - continue; suffix = startswith(arg, p); if (suffix) { suffix += strspn(suffix, "/"); if (*suffix) - return process_suffix(suffix, NULL); + return process_suffix(suffix, p); else return process_suffixes(arg); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/systemd-234/src/libsystemd/sd-bus/sd-bus.c new/systemd-234/src/libsystemd/sd-bus/sd-bus.c --- old/systemd-234/src/libsystemd/sd-bus/sd-bus.c 2018-01-10 12:03:54.000000000 +0100 +++ new/systemd-234/src/libsystemd/sd-bus/sd-bus.c 2018-01-16 11:22:50.000000000 +0100 @@ -1344,7 +1344,7 @@ if (!e) return -ENOMEM; - c = strjoina(",argv4=--machine=", m); + c = strjoina(",argv5=--machine=", m); } } @@ -1354,7 +1354,7 @@ return -ENOMEM; } - b->address = strjoin("unixexec:path=ssh,argv1=-xT,argv2=", e, ",argv3=systemd-stdio-bridge", c); + b->address = strjoin("unixexec:path=ssh,argv1=-xT,argv2=--,argv3=", e, ",argv4=systemd-stdio-bridge", c); if (!b->address) return -ENOMEM; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/systemd-234/src/tmpfiles/tmpfiles.c new/systemd-234/src/tmpfiles/tmpfiles.c --- old/systemd-234/src/tmpfiles/tmpfiles.c 2018-01-10 12:03:54.000000000 +0100 +++ new/systemd-234/src/tmpfiles/tmpfiles.c 2018-01-16 11:22:50.000000000 +0100 @@ -180,12 +180,12 @@ static int specifier_machine_id_safe(char specifier, void *data, void *userdata, char **ret) { int r; - /* If /etc/machine_id is missing (e.g. in a chroot environment), returns - * a recognizable error so that the caller can skip the rule + /* If /etc/machine_id is missing or empty (e.g. in a chroot environment) + * return a recognizable error so that the caller can skip the rule * gracefully. */ r = specifier_machine_id(specifier, data, userdata, ret); - if (r == -ENOENT) + if (IN_SET(r, -ENOENT, -ENOMEDIUM)) return -ENOKEY; return r; @@ -2133,8 +2133,8 @@ for (n = 0; n < existing->count; n++) { if (!item_compatible(existing->items + n, &i)) { - log_warning("[%s:%u] Duplicate line for path \"%s\", ignoring.", - fname, line, i.path); + log_notice("[%s:%u] Duplicate line for path \"%s\", ignoring.", + fname, line, i.path); return 0; } }
