aboutsummaryrefslogtreecommitdiffstats
path: root/fs/cachefiles/interface.c
diff options
context:
space:
mode:
authorDavid Howells <dhowells@redhat.com>2018-04-04 08:41:28 -0400
committerDavid Howells <dhowells@redhat.com>2018-04-06 09:05:14 -0400
commitee1235a9a06813429c201bf186397a6feeea07bf (patch)
tree444566605bfafce0b155a76e061a73c264329424 /fs/cachefiles/interface.c
parent402cb8dda949d9b8c0df20ad2527d139faad7ca1 (diff)
fscache: Pass object size in rather than calling back for it
Pass the object size in to fscache_acquire_cookie() and fscache_write_page() rather than the netfs providing a callback by which it can be received. This makes it easier to update the size of the object when a new page is written that extends the object. The current object size is also passed by fscache to the check_aux function, obviating the need to store it in the aux data. Signed-off-by: David Howells <dhowells@redhat.com> Acked-by: Anna Schumaker <anna.schumaker@netapp.com> Tested-by: Steve Dickson <steved@redhat.com>
Diffstat (limited to 'fs/cachefiles/interface.c')
-rw-r--r--fs/cachefiles/interface.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/fs/cachefiles/interface.c b/fs/cachefiles/interface.c
index 3264dcfdc92a..222bc5d8b62c 100644
--- a/fs/cachefiles/interface.c
+++ b/fs/cachefiles/interface.c
@@ -441,7 +441,7 @@ static int cachefiles_attr_changed(struct fscache_object *_object)
441 loff_t oi_size; 441 loff_t oi_size;
442 int ret; 442 int ret;
443 443
444 _object->cookie->def->get_attr(_object->cookie->netfs_data, &ni_size); 444 ni_size = _object->store_limit_l;
445 445
446 _enter("{OBJ%x},[%llu]", 446 _enter("{OBJ%x},[%llu]",
447 _object->debug_id, (unsigned long long) ni_size); 447 _object->debug_id, (unsigned long long) ni_size);
@@ -513,8 +513,7 @@ static void cachefiles_invalidate_object(struct fscache_operation *op)
513 cache = container_of(object->fscache.cache, 513 cache = container_of(object->fscache.cache,
514 struct cachefiles_cache, cache); 514 struct cachefiles_cache, cache);
515 515
516 op->object->cookie->def->get_attr(op->object->cookie->netfs_data, 516 ni_size = op->object->store_limit_l;
517 &ni_size);
518 517
519 _enter("{OBJ%x},[%llu]", 518 _enter("{OBJ%x},[%llu]",
520 op->object->debug_id, (unsigned long long)ni_size); 519 op->object->debug_id, (unsigned long long)ni_size);