Parity operation enhancements

This commit is contained in:
bergware
2022-02-12 00:29:08 +01:00
parent 3c7ed473e4
commit ad26d4e5ca
+6 -6
View File
@@ -1,7 +1,7 @@
#!/usr/bin/php -q
<?PHP
/* Copyright 2005-2021, Lime Technology
* Copyright 2012-2021, Bergware International.
/* Copyright 2005-2022, Lime Technology
* Copyright 2012-2022, Bergware International.
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2,
@@ -16,14 +16,14 @@ $stamps = '/var/tmp/stamps.ini';
$mdcmd = '/usr/local/sbin/mdcmd';
function mdstat($key) {
return exec("grep -Po '^$key=\K\d+' /proc/mdstat");
return exec("grep -Pom1 '^$key=\K.+' /proc/mdstat");
}
if (mdstat('mdResyncPos')>0) {
// Only act on active parity-check operation
if (mdstat('mdResyncPos')>0 && (trim(mdstat('mdResyncAction'))=='check P' || trim(mdstat('mdResyncAction'))=='check P Q')) {
switch ($argv[1]) {
case 'pause':
if (mdstat('mdResync')>0) {
if (!file_exists($stamps)) file_put_contents($stamps,parse_ini_file('/var/local/emhttp/var.ini')['sbSynced']);
if (!file_exists($stamps)) file_put_contents($stamps,mdstat('sbSynced'));
file_put_contents($stamps,','.time(),FILE_APPEND);
exec("$mdcmd nocheck pause");
}