Package: mdadm / 4.1-11
Metadata
Package | Version | Patches format |
---|---|---|
mdadm | 4.1-11 | 3.0 (quilt) |
Patch series
view the series filePatch | File delta | Description |
---|---|---|
0001 Assemble keep MD_DISK_FAILFAST and MD_DISK_WRITEMOST.patch | (download) |
Assemble.c |
3 3 + 0 - 0 ! |
[patch 01/11] assemble: keep md_disk_failfast and md_disk_writemostly flag Before updating superblock of slave disks, desired_state value is set for the target state of the slave disks. But it forgets to check MD_DISK_FAILFAST and MD_DISK_WRITEMOSTLY flags. Then start_arrays() calls ADD_NEW_DISK ioctl-call and pass the state without MD_DISK_FAILFAST and MD_DISK_WRITEMOSTLY. Currenlty it does not generate any problem because kernel does not care MD_DISK_FAILFAST or MD_DISK_WRITEMOSTLY flags. |
0002 Document PART POLICY lines.patch | (download) |
mdadm.conf.5 |
24 23 + 1 - 0 ! |
[patch 02/11] document part-policy lines PART-POLICY has been accepted in mdadm.conf since the same time that POLICY was accepted, but it was never documented. So add the missing documentation. Also fix a bug which would have stopped it from working if anyone had ever tried to use it. Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> |
0003 policy support devices with multiple paths.patch | (download) |
Incremental.c |
5 4 + 1 - 0 ! |
[patch 03/11] policy: support devices with multiple paths. As new releases of Linux some time change the name of a path, some distros keep "legacy" names as well. This is useful, but confuses mdadm which assumes each device has precisely one path. So change this assumption: allow a disk to have several paths, and allow any to match when looking for a policy which matches a disk. Reported-and-tested-by: Mariusz Tkaczyk <mariusz.tkaczyk@intel.com> Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> |
0004 mdcheck add systemd unit files to run mdcheck.patch | (download) |
Makefile |
5 4 + 1 - 0 ! |
[patch 04/11] mdcheck: add systemd unit files to run mdcheck. Having the mdcheck script is not use if is never run. This patch adds systemd unit files so that it can easily be run on the first Sunday of each month for 6 hours, then on every subsequent morning until the check is finished. The units still need to be enabled with systemctl enable mdcheck_start.timer The timer will only actually be started when an array which might need it becomes active. Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> |
0005 Monitor add system timer to run oneshot periodically.patch | (download) |
Makefile |
1 1 + 0 - 0 ! |
[patch 05/11] monitor: add system timer to run --oneshot periodically "mdadm --monitor --oneshot" can be used to get a warning if there are any degraded arrays. It can be helpful to get this warning periodically while the condition persists. This patch add a systemd service and timer which can be enabled with systemctl enable mdmonitor-oneshot.service and will then provide daily warnings. Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> |
0006 imsm update metadata correctly while raid10 double d.patch | (download) |
super-intel.c |
25 19 + 6 - 0 ! |
[patch 06/11] imsm: update metadata correctly while raid10 double degradation Mdmon calls end_migration() when map state changes from normal to degraded. It is not valid because in raid 10 double degradation case mdmon breaks checkpointing but array is still rebuilding. In this case mdmon has to mark map as degraded and continues marking recovery checkpoint in metadata. Migration can be finished only if newly failed device is a rebuilding device. Add catching double degraded to degraded transition. Migration is finished but map state doesn't change, array is still degraded. Update failed_disk_num correctly. If double degradation happens rebuild will start on the lowest slot, but this variable points to the first failed slot. If second fail happens while rebuild this variable shouldn't be updated until rebuild is not finished. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@intel.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> |
0007 Assemble mask FAILFAST and WRITEMOSTLY flags when fi.patch | (download) |
Assemble.c |
5 4 + 1 - 0 ! |
[patch 07/11] assemble: mask failfast and writemostly flags when finding the most recent device If devices[].i.disk.state has MD_DISK_FAILFAST or MD_DISK_WRITEMOSTLY flag, it cannot be the most recent device. Both flags should be masked before checking the state. |
0008 Grow avoid overflow in compute_backup_blocks.patch | (download) |
Grow.c |
3 2 + 1 - 0 ! |
[patch 08/11] grow: avoid overflow in compute_backup_blocks() With a chunk size of 16Meg and data drive count of 8, this calculate can easily overflow the 'int' type that is used for the multiplications. So force it to use "long" instead. Reported-and-tested-by: Ed Spiridonov <edo.rus@gmail.com> Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> |
0009 Grow report correct new chunk size.patch | (download) |
Grow.c |
2 1 + 1 - 0 ! |
[patch 09/11] grow: report correct new chunk size. When using "--grow --chunk=" to change chunk size, the old chunksize is reported instead of the new. Signed-off-by: NeilBrown <neilb@suse.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> |
0010 policy.c prevent NULL pointer referencing.patch | (download) |
policy.c |
2 1 + 1 - 0 ! |
[patch 10/11] policy.c: prevent null pointer referencing paths could be NULL and paths[0] should be followed by NULL pointer checking. |
0011 policy.c Fix for compiler error.patch | (download) |
policy.c |
2 1 + 1 - 0 ! |
[patch 11/11] policy.c: fix for compiler error MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit After cd72f9d(policy: support devices with multiple paths.) compilation on old compilers fails because "āpā may be used uninitialized in this function". Initialize it with NULL to prevent this. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@intel.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> |
debian conffile location.diff | (download) |
Makefile |
4 2 + 2 - 0 ! |
set /etc/mdadm/mdadm.conf as primary config file location On Debian, the configuration file resides primarily in /etc/mdadm/mdadm.conf, /etc/mdadm.conf is only used as a backup. This is a Debian-specific patch. |
debian no Werror.diff | (download) |
Makefile |
2 1 + 1 - 0 ! |
remove -werror from compiler flags -Werror seems like a bad idea on released/packaged code because a toolchain update (introducing new warnings) could break the build. We'll let upstream use it to beautify the code, but remove it for out builds. Signed-off-by: martin f. krafft <madduck@debian.org> |
sha1 includes.diff | (download) |
sha1.h |
8 4 + 4 - 0 ! |
do not #include ansidecl.h from sha1.h, use system headers In 3.2.5 version of mdadm, new sha1 implementation has been included which tries to include ansidecl.h header which is internal to some other project. But this #include isn't really necessary, since this implementation does not actually use any defines from ansidecl.h. So just remove the #include, instead of adding a new external dependency. References: http://www.spinics.net/lists/raid/msg38859.html While at it, unconditionally include system headers like limits.h and stdint.h, since on a Linux system these headers are available, and these contains definitive information about real system types than any guesses. |
readlink path.patch | (download) |
udev-md-raid-arrays.rules |
2 1 + 1 - 0 ! |
readlink is in /bin not /usr/bin on debian Date: Fri, 14 Nov 2014 19:11:51 +0300 Bug-Debian: http://bugs.debian.org/766416 |
mdmonitor service simplify.diff | (download) |
systemd/mdmonitor.service |
5 1 + 4 - 0 ! |
simplify mdmonitor.service |
0001 Create add support for RAID0 layouts.patch | (download) |
Create.c |
11 11 + 0 - 0 ! |
[patch 1/2] create: add support for raid0 layouts. Since Linux 5.4 a layout is needed for RAID0 arrays with varying device sizes. This patch makes the layout of an array visible (via --examine) and sets the layout on newly created arrays. --layout=dangerous can be used to avoid setting a layout so that they array can be used on older kernels. Tested-by: dann frazier <dann.frazier@canonical.com> Signed-off-by: NeilBrown <neilb@suse.de> Signed-off-by: Jes Sorensen <jsorensen@fb.com> Bug-Debian: https://bugs.debian.org/944676 Bug-Ubuntu: https://bugs.launchpad.net/bugs/1850540 Last-Updated: 2019-12-02 |
0002 Assemble add support for RAID0 layouts.patch | (download) |
Assemble.c |
8 8 + 0 - 0 ! |
[patch 2/2] assemble: add support for raid0 layouts. If you have a RAID0 array with varying sized devices on a kernel before 5.4, you cannot assembling it on 5.4 or later without explicitly setting the layout. This is now possible with --update=layout-original (For 3.13 and earlier kernels) or --update=layout-alternate (for 3.14 and later kernels) Signed-off-by: NeilBrown <neilb@suse.de> Signed-off-by: Jes Sorensen <jsorensen@fb.com> Bug-Debian: https://bugs.debian.org/944676 Bug-Ubuntu: https://bugs.launchpad.net/bugs/1850540 Last-Updated: 2019-12-02 |
0001 Respect CROSS_COMPILE when CC is the default.patch | (download) |
Makefile |
4 3 + 1 - 0 ! |
[patch] respect $(cross_compile) when $(cc) is the default Commit 1180ed5 told make to only respect $(CROSS_COMPILE) when $(CC) was unset. But that will never be the case, as make provides a default value for $(CC). Change this logic to respect $(CROSS_COMPILE) when $(CC) is the default. Patch originally by Helmet Grohne. Fixes: 1180ed5 ("Makefile: make the CC definition conditional") Signed-off-by: dann frazier <dann.frazier@canonical.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com> Bug-Debian: https://bugs.debian.org/866522 |
fix manpages.patch | (download) |
md.4 |
34 17 + 17 - 0 ! |
fix typos and macro issues in manpages |
typos in programs.patch | (download) |
Assemble.c |
2 1 + 1 - 0 ! |
typos in programs |
documentation keys in service files.patch | (download) |
systemd/mdadm-grow-continue@.service |
1 1 + 0 - 0 ! |
make adjustments to systemd files provided by upstream |
fix command line help.patch | (download) |
ReadMe.c |
2 1 + 1 - 0 ! |
make command-line help consistent with manual page. Mode was missing. |
strcat look for md device in dev md.patch p1 | (download) |
Monitor.c |
2 1 + 1 - 0 ! |
look for md device in /dev/md |
exit gracefully when md device not found.patch | (download) |
Monitor.c |
10 8 + 2 - 0 ! |
exit gracefully when md device not found |
lp 1847924 introduce new array state broken.patch | (download) |
Detail.c |
14 12 + 2 - 0 ! |
introduce new array state 'broken' for raid0/linear Currently if a md raid0/linear array gets one or more members removed while being mounted, kernel keeps showing state 'clean' in the 'array_state' sysfs attribute. Despite udev signaling the member device is gone, 'mdadm' cannot issue the STOP_ARRAY ioctl successfully, given the array is mounted. Nothing else hints that something is wrong (except that the removed devices don't show properly in the output of mdadm 'detail' command). There is no other property to be checked, and if user is not performing reads/writes to the array, even kernel log is quiet and doesn't give a clue about the missing member. This patch is the mdadm counterpart of kernel new array state 'broken'. The 'broken' state mimics the state 'clean' in every aspect, being useful only to distinguish if an array has some member missing. All necessary paths in mdadm were changed to deal with 'broken' state, and in case the tool runs in a kernel that is not updated, it'll work normally, i.e., it doesn't require the 'broken' state in order to work. Also, this patch changes the way the array state is showed in the 'detail' command (for raid0/linear only) - now it takes the 'array_state' sysfs attribute into account instead of only rely in the MD_SB_CLEAN flag. |
test installed.patch | (download) |
tests/func.sh |
4 0 + 4 - 0 ! |
test installed files The test suite seems to check the executable bit on the local build product 'mdadm' but runs all programs from the system PATH. This change should test the installed version. . I believe this change tests the installed version, but that hypothesis is not supported by much else. The autopkgtest restriction isolation-machine made it |