Hello community, here is the log from the commit of package dmraid for openSUSE:Factory checked in at 2017-11-03 16:32:20 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dmraid (Old) and /work/SRC/openSUSE:Factory/.dmraid.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dmraid" Fri Nov 3 16:32:20 2017 rev:58 rq:536996 version:1.0.0.rc16 Changes: -------- --- /work/SRC/openSUSE:Factory/dmraid/dmraid.changes 2017-02-20 14:29:56.287630617 +0100 +++ /work/SRC/openSUSE:Factory/.dmraid.new/dmraid.changes 2017-11-03 16:33:16.073828060 +0100 @@ -1,0 +2,6 @@ +Thu Oct 26 21:02:43 UTC 2017 - [email protected] + +- dmraid: remove partitions with O_RDONLY + * add 0001-remove-partitions-with-O_RDONLY.patch + +------------------------------------------------------------------- New: ---- 0001-remove-partitions-with-O_RDONLY.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dmraid.spec ++++++ --- /var/tmp/diff_new_pack.nrtLZY/_old 2017-11-03 16:33:17.109790353 +0100 +++ /var/tmp/diff_new_pack.nrtLZY/_new 2017-11-03 16:33:17.109790353 +0100 @@ -49,6 +49,7 @@ Patch8: dmraid-move-var-lock-to-run-lock.patch Patch9: dmraid-destdir.patch Patch10: fix-undefined-symbol.patch +Patch11: 0001-remove-partitions-with-O_RDONLY.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build PreReq: %fillup_prereq @@ -99,6 +100,7 @@ %patch8 -p1 %patch9 -p1 %patch10 -p1 +%patch11 -p2 cp %{SOURCE3} . ++++++ 0001-remove-partitions-with-O_RDONLY.patch ++++++ >From 3e073f5ac0b1d8d930615cd3fbb1401b56ceb848 Mon Sep 17 00:00:00 2001 From: Martin Wilck <[email protected]> Date: Thu, 26 Oct 2017 14:31:04 +0200 Subject: [PATCH] remove partitions with O_RDONLY It's not necessary to use O_RDWR to use BLKPG_DEL_PARTITION. It's actually harmful, because closing the device will cause an IN_CLOSE_WRITE inotify event, which will trigger a BLKRRPART from systemd, which will reinstate all partitions just deleted. --- lib/device/partition.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/device/partition.c b/lib/device/partition.c index 99e92f6a66cd..bcc8de819eb4 100644 --- a/1.0.0.rc16/lib/device/partition.c +++ b/1.0.0.rc16/lib/device/partition.c @@ -22,8 +22,7 @@ _remove_subset_partitions(struct lib_context *lc, struct raid_set *rs) }; list_for_each_entry(rd, &rs->devs, devs) { - int fd = open(rd->di->path, O_RDWR); - + int fd = open(rd->di->path, O_RDONLY); if (fd < 0) LOG_ERR(lc, 0, "opening %s: %s\n", rd->di->path, strerror(errno)); -- 2.14.2
