Re: [Cluster-devel] [GFS2 PATCH 1/4] gfs2: check quota for blocks we're about to allocate

2015-02-12 Thread Andrew Price
Hi Abhi, On 12/02/15 16:54, Abhi Das wrote: This patch allows gfs2_quota_check() to take an extra argument called 'exp_change'. Prior to any allocation, gfs2_quota_check() or gfs2_quota_lock_check() is called with exp_change containing the number of blocks we expect to allocate in this

Re: [Cluster-devel] [fsck.gfs2 PATCH] fsck.gfs2: Change block_map to match bitmap

2015-02-12 Thread Bob Peterson
- Original Message - - Original Message - Hi Bob, On 22/01/15 20:41, Bob Peterson wrote: Hi, This patch changes the old block_map structure for fsck.gfs2 to the simpler bitmap structure so that we have a 1:1 correspondence. This was done to reduce memory

Re: [Cluster-devel] [GFS2 PATCH 1/4] gfs2: check quota for blocks we're about to allocate

2015-02-12 Thread Abhijith Das
- Original Message - From: Andrew Price anpr...@redhat.com To: Abhi Das a...@redhat.com, cluster-devel@redhat.com Sent: Thursday, February 12, 2015 12:12:50 PM Subject: Re: [Cluster-devel] [GFS2 PATCH 1/4] gfs2: check quota for blocks we're about to allocate Hi Abhi, On

[Cluster-devel] [PATCH] GFS2: gfs2_set_acl(): Cache no acl as well

2015-02-12 Thread Andreas Gruenbacher
When removing a default acl or setting an access acl that is entirely represented in the file mode, we end up with acl == NULL in gfs2_set_acl(). In that case, bring gfs2 in line with other file systems and cache the NULL acl with set_cached_acl() instead of invalidating the cache with

[Cluster-devel] [GFS2 PATCH 3/4] gfs2: add new function gfs2_inpl_rsrv_ret_max_avl

2015-02-12 Thread Abhi Das
This is a variant of the existing gfs2_inplace_reserve() function. If the requested number of blocks are not available to be reserved from any of the rgrps, gfs2_inplace_reserve() return -ENOSPC. gfs2_inpl_rsrv_ret_max_val() will also return the maximum blocks available in an extra parameter

[Cluster-devel] [GFS2 PATCH 0/4] fallocate quota fixes

2015-02-12 Thread Abhi Das
These patches are related to bz1174295 where fallocate could exceed quota. I'm posting these for early feedback as these patches are only compile-tested so far. patch 1 - This is the patch that actually addresses the quota exceed issue. Quota checks were not being performed

[Cluster-devel] [GFS2 PATCH 4/4] gfs2: allow fallocate to max out quotas/fs efficiently

2015-02-12 Thread Abhi Das
With the addition of gfs2_quota_lck_chk_ret_allow() and gfs2_inpl_rsrv_ret_max_avl(), we can quickly get an estimate of how many more blocks are available for allocation restricted by quota and fs size respectively. By trying to allocate what's available instead of guessing, we can max out quotas

[Cluster-devel] [GFS2 PATCH 1/4] gfs2: check quota for blocks we're about to allocate

2015-02-12 Thread Abhi Das
This patch allows gfs2_quota_check() to take an extra argument called 'exp_change'. Prior to any allocation, gfs2_quota_check() or gfs2_quota_lock_check() is called with exp_change containing the number of blocks we expect to allocate in this operation. gfs2_quota_check() will add this number to

[Cluster-devel] [GFS2 PATCH 2/4] gfs2: add new quota check functions

2015-02-12 Thread Abhi Das
gfs2_quota_chk_ret_allow and gfs2_quota_lck_chk_ret_allow are variants of gfs2_quota_check and gfs2_quota_lock_check respectively. If an operation will not succeed due to a quota violation, these functions will return the number of blocks that quota will actually allow without failing in an extra

Re: [Cluster-devel] [GFS2 PATCH 0/4] fallocate quota fixes

2015-02-12 Thread Bob Peterson
- Original Message - These patches are related to bz1174295 where fallocate could exceed quota. I'm posting these for early feedback as these patches are only compile-tested so far. patch 1 - This is the patch that actually addresses the quota exceed issue. Quota checks were