From 8d6fbb9532d03e9a6f462bfc7c2147646b56e726 Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Thu, 7 Aug 2014 22:14:28 -0700 Subject: [PATCH] Quotacheck isn't needed on XFS --- quota/linux-lib.pl | 15 +++++++++++++-- quota/list_groups.cgi | 4 +++- quota/list_users.cgi | 4 +++- 3 files changed, 19 insertions(+), 4 deletions(-) diff --git a/quota/linux-lib.pl b/quota/linux-lib.pl index 7fa777dc9..20f85bff0 100755 --- a/quota/linux-lib.pl +++ b/quota/linux-lib.pl @@ -753,7 +753,7 @@ failure. =cut sub copy_user_quota { -for($i=1; $i<@_; $i++) { +for(my $i=1; $i<@_; $i++) { $out = &backquote_logged("$config{'user_copy_command'} ". quotemeta($_[0])." ".quotemeta($_[$i])." 2>&1"); if ($?) { return $out; } @@ -770,7 +770,7 @@ failure. =cut sub copy_group_quota { -for($i=1; $i<@_; $i++) { +for(my $i=1; $i<@_; $i++) { $out = &backquote_logged("$config{'group_copy_command'} ". quotemeta($_[0])." ".quotemeta($_[$i])." 2>&1"); if ($?) { return $out; } @@ -1010,5 +1010,16 @@ my $out = &backquote_logged("xfs_quota -x -c 'limit -g bsoft=${sblocks}k bhard=$ &error($out) if ($?); } +=head2 can_quotacheck(fs) + +Returns 1 if some FS supports quota checking + +=cut +sub can_quotacheck +{ +my ($fs) = @_; +return !&is_xfs_fs($fs); +} + 1; diff --git a/quota/list_groups.cgi b/quota/list_groups.cgi index 253c819b0..fb6cd70bc 100755 --- a/quota/list_groups.cgi +++ b/quota/list_groups.cgi @@ -32,7 +32,9 @@ print &ui_tabs_start(\@tabs, "mode", $in{'mode'} || 'list', 1); if ($access{'ggrace'}) { push(@ulinks, &ui_link("group_grace_form.cgi?filesys=".&urlize($f), $text{'lusers_egrace'}) ); } -push(@ulinks, &ui_link("check_quotas.cgi?filesys=".&urlize($f)."&source=group", $text{'lusers_check'}) ); +if (!defined(&can_quotacheck) || &can_quotacheck($f)) { + push(@ulinks, &ui_link("check_quotas.cgi?filesys=".&urlize($f)."&source=group", $text{'lusers_check'}) ); + } # Groups list, in a tab print &ui_tabs_start_tab("mode", "list"); diff --git a/quota/list_users.cgi b/quota/list_users.cgi index d023cc1b2..f4c2809a3 100755 --- a/quota/list_users.cgi +++ b/quota/list_users.cgi @@ -32,7 +32,9 @@ print &ui_tabs_start(\@tabs, "mode", $in{'mode'} || 'list', 1); if ($access{'ugrace'}) { push(@ulinks, &ui_link("user_grace_form.cgi?filesys=".&urlize($f), $text{'lusers_egrace'}) ); } -push(@ulinks, &ui_link("check_quotas.cgi?filesys=".&urlize($f)."&source=user", $text{'lusers_check'}) ); +if (!defined(&can_quotacheck) || &can_quotacheck($f)) { + push(@ulinks, &ui_link("check_quotas.cgi?filesys=".&urlize($f)."&source=user", $text{'lusers_check'}) ); + } # Users list, in a tab print &ui_tabs_start_tab("mode", "list");