Files
webgui/emhttp/plugins/dynamix/scripts/parity_control
Tom Mortensen f9ec00b488 repo reorg
2023-06-02 12:49:33 -07:00

40 lines
1.1 KiB
PHP
Executable File

#!/usr/bin/php -q
<?PHP
/* Copyright 2005-2023, Lime Technology
* Copyright 2012-2023, 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,
* as published by the Free Software Foundation.
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*/
?>
<?
$stamps = '/var/tmp/stamps.ini';
$mdcmd = '/usr/local/sbin/mdcmd';
function mdstat($key) {
return exec("grep -Pom1 '^$key=\K.+' /proc/mdstat");
}
// Only act on active parity-check operation
if (mdstat('mdResyncPos')>0 && substr(mdstat('mdResyncAction'),0,7)=='check P') {
switch ($argv[1]) {
case 'pause':
if (mdstat('mdResync')>0) {
if (!file_exists($stamps)) file_put_contents($stamps,mdstat('sbSynced'));
file_put_contents($stamps,','.time(),FILE_APPEND);
exec("$mdcmd nocheck pause");
}
break;
case 'resume':
if (mdstat('mdResync')==0) {
file_put_contents($stamps,','.time(),FILE_APPEND);
exec("$mdcmd check resume");
}
break;
}
}
?>