diff options
Diffstat (limited to 'fs/xfs/xfs_fsops.c')
-rw-r--r-- | fs/xfs/xfs_fsops.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/fs/xfs/xfs_fsops.c b/fs/xfs/xfs_fsops.c index f1d0585041b9..852b6d32e8d0 100644 --- a/fs/xfs/xfs_fsops.c +++ b/fs/xfs/xfs_fsops.c | |||
@@ -435,6 +435,9 @@ xfs_growfs_data( | |||
435 | xfs_growfs_data_t *in) | 435 | xfs_growfs_data_t *in) |
436 | { | 436 | { |
437 | int error; | 437 | int error; |
438 | |||
439 | if (!capable(CAP_SYS_ADMIN)) | ||
440 | return XFS_ERROR(EPERM); | ||
438 | if (!mutex_trylock(&mp->m_growlock)) | 441 | if (!mutex_trylock(&mp->m_growlock)) |
439 | return XFS_ERROR(EWOULDBLOCK); | 442 | return XFS_ERROR(EWOULDBLOCK); |
440 | error = xfs_growfs_data_private(mp, in); | 443 | error = xfs_growfs_data_private(mp, in); |
@@ -448,6 +451,9 @@ xfs_growfs_log( | |||
448 | xfs_growfs_log_t *in) | 451 | xfs_growfs_log_t *in) |
449 | { | 452 | { |
450 | int error; | 453 | int error; |
454 | |||
455 | if (!capable(CAP_SYS_ADMIN)) | ||
456 | return XFS_ERROR(EPERM); | ||
451 | if (!mutex_trylock(&mp->m_growlock)) | 457 | if (!mutex_trylock(&mp->m_growlock)) |
452 | return XFS_ERROR(EWOULDBLOCK); | 458 | return XFS_ERROR(EWOULDBLOCK); |
453 | error = xfs_growfs_log_private(mp, in); | 459 | error = xfs_growfs_log_private(mp, in); |