Date: Thursday, June 12, 2014 @ 01:29:08 Author: dreisner Revision: 215052
upgpkg: systemd 214-1 - drop lots of patches - drop NM/RANLIB hack for LTO (use upstream "fix") - drop added caps from systemd-detect-virt - add post_upgrade to migrate runtime resolv.conf Modified: systemd/trunk/PKGBUILD systemd/trunk/systemd.install Deleted: systemd/trunk/0001-fsck-disable-l-option-for-now.patch systemd/trunk/0001-networkd-link-intialize-mac-address.patch systemd/trunk/0001-udev-always-close-lock-file-descriptor.patch systemd/trunk/0001-udev-exclude-device-mapper-from-block-device-ownersh.patch systemd/trunk/0001-udev-really-exclude-device-mapper-from-block-device-.patch systemd/trunk/0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch -----------------------------------------------------------------+ 0001-fsck-disable-l-option-for-now.patch | 58 ---------- 0001-networkd-link-intialize-mac-address.patch | 33 ----- 0001-udev-always-close-lock-file-descriptor.patch | 48 -------- 0001-udev-exclude-device-mapper-from-block-device-ownersh.patch | 38 ------ 0001-udev-really-exclude-device-mapper-from-block-device-.patch | 33 ----- 0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch | 26 ---- PKGBUILD | 36 ------ systemd.install | 24 +++- 8 files changed, 24 insertions(+), 272 deletions(-) Deleted: 0001-fsck-disable-l-option-for-now.patch =================================================================== --- 0001-fsck-disable-l-option-for-now.patch 2014-06-11 23:17:01 UTC (rev 215051) +++ 0001-fsck-disable-l-option-for-now.patch 2014-06-11 23:29:08 UTC (rev 215052) @@ -1,58 +0,0 @@ -From c343be283b7152554bac0c02493a4e1759c163f7 Mon Sep 17 00:00:00 2001 -From: Kay Sievers <k...@vrfy.org> -Date: Wed, 4 Jun 2014 11:14:48 +0200 -Subject: [PATCH] fsck: disable "-l" option for now - - https://bugs.freedesktop.org/show_bug.cgi?id=79576#c5 ---- - TODO | 4 +++- - src/fsck/fsck.c | 13 ++++++++++++- - 2 files changed, 15 insertions(+), 2 deletions(-) - -diff --git a/TODO b/TODO -index 8169a57..fb118f1 100644 ---- a/TODO -+++ b/TODO -@@ -1,4 +1,7 @@ - Bugfixes: -+* Re-enable "fsck -l" when it is ready: -+ https://bugs.freedesktop.org/show_bug.cgi?id=79576#c5 -+ - * Should systemctl status \* work on all unit types, not just .service? - - * enabling an instance unit creates a pointless link, and -@@ -20,7 +23,6 @@ Bugfixes: - See the comment in sd_bus_unref() for more.. - - External: -- - * Fedora: when installing fedora with yum --installroot /var/run is a directory, not a symlink - https://bugzilla.redhat.com/show_bug.cgi?id=975864 - -diff --git a/src/fsck/fsck.c b/src/fsck/fsck.c -index 56cb52d..cb2f573 100644 ---- a/src/fsck/fsck.c -+++ b/src/fsck/fsck.c -@@ -319,7 +319,18 @@ int main(int argc, char *argv[]) { - cmdline[i++] = "/sbin/fsck"; - cmdline[i++] = arg_repair; - cmdline[i++] = "-T"; -- cmdline[i++] = "-l"; -+ -+ /* -+ * Disable locking which conflict with udev's event -+ * ownershipi, until util-linux moves the flock -+ * synchronization file which prevents multiple fsck running -+ * on the same rotationg media, from the disk device -+ * node to a privately owned regular file. -+ * -+ * https://bugs.freedesktop.org/show_bug.cgi?id=79576#c5 -+ * -+ * cmdline[i++] = "-l"; -+ */ - - if (!root_directory) - cmdline[i++] = "-M"; --- -2.0.0 - Deleted: 0001-networkd-link-intialize-mac-address.patch =================================================================== --- 0001-networkd-link-intialize-mac-address.patch 2014-06-11 23:17:01 UTC (rev 215051) +++ 0001-networkd-link-intialize-mac-address.patch 2014-06-11 23:29:08 UTC (rev 215052) @@ -1,33 +0,0 @@ -From 2ae6cda520f5c925ba313b8e83ea8b58bc00112c Mon Sep 17 00:00:00 2001 -From: Tom Gundersen <t...@jklm.no> -Date: Wed, 4 Jun 2014 21:29:08 +0200 -Subject: [PATCH] networkd: link - intialize mac address - -Otherwise .netwrok matching on MAC address will not work. - -Based on patch by Dave Reisner, and bug originally reported by Max Pray. - -Conflicts: - src/network/networkd-link.c ---- - src/network/networkd-link.c | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c -index 6677b94..9afb871 100644 ---- a/src/network/networkd-link.c -+++ b/src/network/networkd-link.c -@@ -75,6 +75,10 @@ static int link_new(Manager *manager, sd_rtnl_message *message, Link **ret) { - if (!link->ifname) - return -ENOMEM; - -+ r = sd_rtnl_message_read_ether_addr(message, IFLA_ADDRESS, &link->mac); -+ if (r < 0) -+ return r; -+ - r = asprintf(&link->state_file, "/run/systemd/network/links/%"PRIu64, - link->ifindex); - if (r < 0) --- -2.0.0 - Deleted: 0001-udev-always-close-lock-file-descriptor.patch =================================================================== --- 0001-udev-always-close-lock-file-descriptor.patch 2014-06-11 23:17:01 UTC (rev 215051) +++ 0001-udev-always-close-lock-file-descriptor.patch 2014-06-11 23:29:08 UTC (rev 215052) @@ -1,48 +0,0 @@ -From 3d06f4183470d42361303086ed9dedd29c0ffc1b Mon Sep 17 00:00:00 2001 -From: Kay Sievers <k...@vrfy.org> -Date: Tue, 3 Jun 2014 10:46:51 +0200 -Subject: [PATCH] udev: always close lock file descriptor - -https://bugs.freedesktop.org/show_bug.cgi?id=79576 ---- - src/udev/udevd.c | 10 ++++------ - 1 file changed, 4 insertions(+), 6 deletions(-) - -diff --git a/src/udev/udevd.c b/src/udev/udevd.c -index 1c9488e..819ea3b 100644 ---- a/src/udev/udevd.c -+++ b/src/udev/udevd.c -@@ -301,6 +301,7 @@ static void worker_new(struct event *event) - if (fd_lock >= 0 && flock(fd_lock, LOCK_SH|LOCK_NB) < 0) { - log_debug("Unable to flock(%s), skipping event handling: %m", udev_device_get_devnode(d)); - err = -EWOULDBLOCK; -+ fd_lock = safe_close(fd_lock); - goto skip; - } - } -@@ -317,8 +318,7 @@ static void worker_new(struct event *event) - udev_device_update_db(dev); - } - -- if (fd_lock >= 0) -- close(fd_lock); -+ safe_close(fd_lock); - - /* send processed event back to libudev listeners */ - udev_monitor_send_device(worker_monitor, NULL, dev); -@@ -377,10 +377,8 @@ skip: - } - out: - udev_device_unref(dev); -- if (fd_signal >= 0) -- close(fd_signal); -- if (fd_ep >= 0) -- close(fd_ep); -+ safe_close(fd_signal); -+ safe_close(fd_ep); - close(fd_inotify); - close(worker_watch[WRITE_END]); - udev_rules_unref(rules); --- -2.0.0 - Deleted: 0001-udev-exclude-device-mapper-from-block-device-ownersh.patch =================================================================== --- 0001-udev-exclude-device-mapper-from-block-device-ownersh.patch 2014-06-11 23:17:01 UTC (rev 215051) +++ 0001-udev-exclude-device-mapper-from-block-device-ownersh.patch 2014-06-11 23:29:08 UTC (rev 215052) @@ -1,38 +0,0 @@ -From e918a1b5a94f270186dca59156354acd2a596494 Mon Sep 17 00:00:00 2001 -From: Kay Sievers <k...@vrfy.org> -Date: Tue, 3 Jun 2014 16:49:38 +0200 -Subject: [PATCH] udev: exclude device-mapper from block device ownership event - locking - ---- - src/udev/udevd.c | 14 +++++++++++++- - 1 file changed, 13 insertions(+), 1 deletion(-) - -diff --git a/src/udev/udevd.c b/src/udev/udevd.c -index 819ea3b..6c05104 100644 ---- a/src/udev/udevd.c -+++ b/src/udev/udevd.c -@@ -290,7 +290,19 @@ static void worker_new(struct event *event) - * acquired the lock, the external process will block until - * udev has finished its event handling. - */ -- if (streq_ptr("block", udev_device_get_subsystem(dev))) { -+ -+ /* -+ * <kabi_> since we make check - device seems unused - we try -+ * ioctl to deactivate - and device is found to be opened -+ * <kay> sure, you try to take a write lock -+ * <kay> if you get it udev is out -+ * <kay> if you can't get it, udev is busy -+ * <kabi_> we cannot deactivate openned device (as it is in-use) -+ * <kay> maybe we should just exclude dm from that thing entirely -+ * <kabi_> IMHO this sounds like a good plan for this moment -+ */ -+ if (streq_ptr("block", udev_device_get_subsystem(dev)) && -+ !startswith("dm-", udev_device_get_sysname(dev))) { - struct udev_device *d = dev; - - if (streq_ptr("partition", udev_device_get_devtype(d))) --- -2.0.0 - Deleted: 0001-udev-really-exclude-device-mapper-from-block-device-.patch =================================================================== --- 0001-udev-really-exclude-device-mapper-from-block-device-.patch 2014-06-11 23:17:01 UTC (rev 215051) +++ 0001-udev-really-exclude-device-mapper-from-block-device-.patch 2014-06-11 23:29:08 UTC (rev 215052) @@ -1,33 +0,0 @@ -From 638ca89c53e2b897cfb3f627f4acbc7d09af2f4c Mon Sep 17 00:00:00 2001 -From: Christian Hesse <m...@eworm.de> -Date: Tue, 10 Jun 2014 15:51:15 +0200 -Subject: [PATCH] udev: really exclude device-mapper from block device - ownership event locking - -Arguments were wrong order, no? -This fixes commits: - -e918a1b5a94f270186dca59156354acd2a596494 -3d06f4183470d42361303086ed9dedd29c0ffc1b ---- -* dreisner: avoid second hunk of patch which doesn't apply to v213 - - src/udev/udevd.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/src/udev/udevd.c b/src/udev/udevd.c -index 0f3f3f0..160360e 100644 ---- a/src/udev/udevd.c -+++ b/src/udev/udevd.c -@@ -304,7 +304,7 @@ static void worker_new(struct event *event) - * <kabi_> IMHO this sounds like a good plan for this moment - */ - if (streq_ptr("block", udev_device_get_subsystem(dev)) && -- !startswith("dm-", udev_device_get_sysname(dev))) { -+ !startswith(udev_device_get_sysname(dev), "dm-")) { - struct udev_device *d = dev; - - if (streq_ptr("partition", udev_device_get_devtype(d))) --- -2.0.0 - Deleted: 0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch =================================================================== --- 0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch 2014-06-11 23:17:01 UTC (rev 215051) +++ 0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch 2014-06-11 23:29:08 UTC (rev 215052) @@ -1,26 +0,0 @@ -From d8e40d62ab871a87fde421c4b246bb45bc3cbe2d Mon Sep 17 00:00:00 2001 -From: Jonathan Liu <net...@gmail.com> -Date: Thu, 29 May 2014 01:17:25 +1000 -Subject: [PATCH] units: use KillMode=mixed for systemd-nspawn@.service - -This causes the container to shut down cleanly when the service is -stopped. ---- - units/systemd-nsp...@.service.in | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/units/systemd-nsp...@.service.in b/units/systemd-nsp...@.service.in -index ff36e90..e373628 100644 ---- a/units/systemd-nsp...@.service.in -+++ b/units/systemd-nsp...@.service.in -@@ -11,6 +11,7 @@ Documentation=man:systemd-nspawn(1) - - [Service] - ExecStart=@bindir@/systemd-nspawn --quiet --keep-unit --boot --link-journal=guest --directory=/var/lib/container/%i -+KillMode=mixed - Type=notify - - [Install] --- -1.9.3 - Modified: PKGBUILD =================================================================== --- PKGBUILD 2014-06-11 23:17:01 UTC (rev 215051) +++ PKGBUILD 2014-06-11 23:29:08 UTC (rev 215052) @@ -3,8 +3,8 @@ pkgbase=systemd pkgname=('systemd' 'libsystemd' 'systemd-sysvcompat') -pkgver=213 -pkgrel=9 +pkgver=214 +pkgrel=1 arch=('i686' 'x86_64') url="http://www.freedesktop.org/wiki/Software/systemd" makedepends=('acl' 'cryptsetup' 'docbook-xsl' 'gobject-introspection' 'gperf' @@ -15,41 +15,15 @@ source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz" 'initcpio-hook-udev' 'initcpio-install-systemd' - 'initcpio-install-udev' - '0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch' - '0001-fsck-disable-l-option-for-now.patch' - '0001-udev-exclude-device-mapper-from-block-device-ownersh.patch' - '0001-udev-always-close-lock-file-descriptor.patch' - '0001-networkd-link-intialize-mac-address.patch' - '0001-udev-really-exclude-device-mapper-from-block-device-.patch') -md5sums=('06496edcf86ddf6d8c12d72ba78e735d' + 'initcpio-install-udev') +md5sums=('eac4f9fc5bd18a0efc3fc20858baacf3' '29245f7a240bfba66e2b1783b63b6b40' '66cca7318e13eaf37c5b7db2efa69846' - 'bde43090d4ac0ef048e3eaee8202a407' - '5f8ad7126970855614c7fa34b317728d' - '888cf85a92dd28bcf80e18539fef3915' - 'f26803dda8811196c0564f928bfe69d1' - '2a14fe9876fa48f01cca3c1d575e5771' - '3d53d3bcd85ca0b2ff9f4e79d012808d' - 'ae060fc00eeced6554e70d9a9c0eb42f') + 'bde43090d4ac0ef048e3eaee8202a407') -prepare() { - cd "$pkgname-$pkgver" - - patch -Np1 <"$srcdir/0001-units-use-KillMode-mixed-for-systemd-nspawn-.service.patch" - patch -Np1 <"$srcdir/0001-networkd-link-intialize-mac-address.patch" - patch -Np1 <"$srcdir/0001-fsck-disable-l-option-for-now.patch" - patch -Np1 <"$srcdir/0001-udev-always-close-lock-file-descriptor.patch" - patch -Np1 <"$srcdir/0001-udev-exclude-device-mapper-from-block-device-ownersh.patch" - patch -Np1 <"$srcdir/0001-udev-really-exclude-device-mapper-from-block-device-.patch" -} - - build() { cd "$pkgname-$pkgver" - export NM=gcc-nm RANLIB=gcc-ranlib - ./configure \ --libexecdir=/usr/lib \ --localstatedir=/var \ Modified: systemd.install =================================================================== --- systemd.install 2014-06-11 23:17:01 UTC (rev 215051) +++ systemd.install 2014-06-11 23:29:08 UTC (rev 215052) @@ -38,10 +38,6 @@ post_common() { systemd-machine-id-setup - # TODO: drop this for 214 - # http://cgit.freedesktop.org/systemd/systemd/commit/?id=fdd2531170 - add_privs usr/bin/systemd-detect-virt 'cap_dac_override,cap_sys_ptrace+ep' - udevadm hwdb --update journalctl --update-catalog } @@ -120,6 +116,23 @@ fi } +_214_1_changes() { + # /run/systemd/network/resolv.conf -> /run/systemd/resolve/resolv.conf + if [[ etc/resolv.conf -ef run/systemd/network/resolv.conf ]]; then + ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf + + if sd_booted; then + if [[ ! -d run/systemd/resolv ]]; then + mkdir run/systemd/resolv + fi + + if [[ -f run/systemd/network/resolv.conf ]]; then + mv run/systemd/{network,resolve}/resolv.conf + fi + fi + fi +} + post_install() { post_common "$@" @@ -144,7 +157,8 @@ 208-8 209-1 210-1 - 213-4) + 213-4 + 214-1) for v in "${upgrades[@]}"; do if [[ $(vercmp "$v" "$2") -eq 1 ]]; then