Skip to content

Commit 56ff9c8

Browse files
committed
afs: Kill afs_wait_mode
The afs_wait_mode struct isn't really necessary. Client calls only use one of a choice of two (synchronous or the asynchronous) and incoming calls don't use the wait at all. Replace with a boolean parameter. Signed-off-by: David Howells <dhowells@redhat.com>
1 parent 8e8d7f1 commit 56ff9c8

File tree

7 files changed

+90
-149
lines changed

7 files changed

+90
-149
lines changed

fs/afs/callback.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -343,7 +343,7 @@ void afs_dispatch_give_up_callbacks(struct work_struct *work)
343343
* had callbacks entirely, and the server will call us later to break
344344
* them
345345
*/
346-
afs_fs_give_up_callbacks(server, &afs_async_call);
346+
afs_fs_give_up_callbacks(server, true);
347347
}
348348

349349
/*

fs/afs/fsclient.c

Lines changed: 40 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ int afs_fs_fetch_file_status(struct afs_server *server,
275275
struct key *key,
276276
struct afs_vnode *vnode,
277277
struct afs_volsync *volsync,
278-
const struct afs_wait_mode *wait_mode)
278+
bool async)
279279
{
280280
struct afs_call *call;
281281
__be32 *bp;
@@ -300,7 +300,7 @@ int afs_fs_fetch_file_status(struct afs_server *server,
300300
bp[2] = htonl(vnode->fid.vnode);
301301
bp[3] = htonl(vnode->fid.unique);
302302

303-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
303+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
304304
}
305305

306306
/*
@@ -464,7 +464,7 @@ static int afs_fs_fetch_data64(struct afs_server *server,
464464
struct key *key,
465465
struct afs_vnode *vnode,
466466
struct afs_read *req,
467-
const struct afs_wait_mode *wait_mode)
467+
bool async)
468468
{
469469
struct afs_call *call;
470470
__be32 *bp;
@@ -495,7 +495,7 @@ static int afs_fs_fetch_data64(struct afs_server *server,
495495
bp[7] = htonl(lower_32_bits(req->len));
496496

497497
atomic_inc(&req->usage);
498-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
498+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
499499
}
500500

501501
/*
@@ -505,15 +505,15 @@ int afs_fs_fetch_data(struct afs_server *server,
505505
struct key *key,
506506
struct afs_vnode *vnode,
507507
struct afs_read *req,
508-
const struct afs_wait_mode *wait_mode)
508+
bool async)
509509
{
510510
struct afs_call *call;
511511
__be32 *bp;
512512

513513
if (upper_32_bits(req->pos) ||
514514
upper_32_bits(req->len) ||
515515
upper_32_bits(req->pos + req->len))
516-
return afs_fs_fetch_data64(server, key, vnode, req, wait_mode);
516+
return afs_fs_fetch_data64(server, key, vnode, req, async);
517517

518518
_enter("");
519519

@@ -539,7 +539,7 @@ int afs_fs_fetch_data(struct afs_server *server,
539539
bp[5] = htonl(lower_32_bits(req->len));
540540

541541
atomic_inc(&req->usage);
542-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
542+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
543543
}
544544

545545
/*
@@ -568,7 +568,7 @@ static const struct afs_call_type afs_RXFSGiveUpCallBacks = {
568568
* - the callbacks are held in the server->cb_break ring
569569
*/
570570
int afs_fs_give_up_callbacks(struct afs_server *server,
571-
const struct afs_wait_mode *wait_mode)
571+
bool async)
572572
{
573573
struct afs_call *call;
574574
size_t ncallbacks;
@@ -622,7 +622,7 @@ int afs_fs_give_up_callbacks(struct afs_server *server,
622622
ASSERT(ncallbacks > 0);
623623
wake_up_nr(&server->cb_break_waitq, ncallbacks);
624624

625-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
625+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
626626
}
627627

628628
/*
@@ -673,7 +673,7 @@ int afs_fs_create(struct afs_server *server,
673673
struct afs_fid *newfid,
674674
struct afs_file_status *newstatus,
675675
struct afs_callback *newcb,
676-
const struct afs_wait_mode *wait_mode)
676+
bool async)
677677
{
678678
struct afs_call *call;
679679
size_t namesz, reqsz, padsz;
@@ -718,7 +718,7 @@ int afs_fs_create(struct afs_server *server,
718718
*bp++ = htonl(mode & S_IALLUGO); /* unix mode */
719719
*bp++ = 0; /* segment size */
720720

721-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
721+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
722722
}
723723

724724
/*
@@ -763,7 +763,7 @@ int afs_fs_remove(struct afs_server *server,
763763
struct afs_vnode *vnode,
764764
const char *name,
765765
bool isdir,
766-
const struct afs_wait_mode *wait_mode)
766+
bool async)
767767
{
768768
struct afs_call *call;
769769
size_t namesz, reqsz, padsz;
@@ -798,7 +798,7 @@ int afs_fs_remove(struct afs_server *server,
798798
bp = (void *) bp + padsz;
799799
}
800800

801-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
801+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
802802
}
803803

804804
/*
@@ -844,7 +844,7 @@ int afs_fs_link(struct afs_server *server,
844844
struct afs_vnode *dvnode,
845845
struct afs_vnode *vnode,
846846
const char *name,
847-
const struct afs_wait_mode *wait_mode)
847+
bool async)
848848
{
849849
struct afs_call *call;
850850
size_t namesz, reqsz, padsz;
@@ -883,7 +883,7 @@ int afs_fs_link(struct afs_server *server,
883883
*bp++ = htonl(vnode->fid.vnode);
884884
*bp++ = htonl(vnode->fid.unique);
885885

886-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
886+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
887887
}
888888

889889
/*
@@ -932,7 +932,7 @@ int afs_fs_symlink(struct afs_server *server,
932932
const char *contents,
933933
struct afs_fid *newfid,
934934
struct afs_file_status *newstatus,
935-
const struct afs_wait_mode *wait_mode)
935+
bool async)
936936
{
937937
struct afs_call *call;
938938
size_t namesz, reqsz, padsz, c_namesz, c_padsz;
@@ -987,7 +987,7 @@ int afs_fs_symlink(struct afs_server *server,
987987
*bp++ = htonl(S_IRWXUGO); /* unix mode */
988988
*bp++ = 0; /* segment size */
989989

990-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
990+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
991991
}
992992

993993
/*
@@ -1036,7 +1036,7 @@ int afs_fs_rename(struct afs_server *server,
10361036
const char *orig_name,
10371037
struct afs_vnode *new_dvnode,
10381038
const char *new_name,
1039-
const struct afs_wait_mode *wait_mode)
1039+
bool async)
10401040
{
10411041
struct afs_call *call;
10421042
size_t reqsz, o_namesz, o_padsz, n_namesz, n_padsz;
@@ -1090,7 +1090,7 @@ int afs_fs_rename(struct afs_server *server,
10901090
bp = (void *) bp + n_padsz;
10911091
}
10921092

1093-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1093+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
10941094
}
10951095

10961096
/*
@@ -1145,7 +1145,7 @@ static int afs_fs_store_data64(struct afs_server *server,
11451145
pgoff_t first, pgoff_t last,
11461146
unsigned offset, unsigned to,
11471147
loff_t size, loff_t pos, loff_t i_size,
1148-
const struct afs_wait_mode *wait_mode)
1148+
bool async)
11491149
{
11501150
struct afs_vnode *vnode = wb->vnode;
11511151
struct afs_call *call;
@@ -1194,7 +1194,7 @@ static int afs_fs_store_data64(struct afs_server *server,
11941194
*bp++ = htonl(i_size >> 32);
11951195
*bp++ = htonl((u32) i_size);
11961196

1197-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1197+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
11981198
}
11991199

12001200
/*
@@ -1203,7 +1203,7 @@ static int afs_fs_store_data64(struct afs_server *server,
12031203
int afs_fs_store_data(struct afs_server *server, struct afs_writeback *wb,
12041204
pgoff_t first, pgoff_t last,
12051205
unsigned offset, unsigned to,
1206-
const struct afs_wait_mode *wait_mode)
1206+
bool async)
12071207
{
12081208
struct afs_vnode *vnode = wb->vnode;
12091209
struct afs_call *call;
@@ -1229,7 +1229,7 @@ int afs_fs_store_data(struct afs_server *server, struct afs_writeback *wb,
12291229

12301230
if (pos >> 32 || i_size >> 32 || size >> 32 || (pos + size) >> 32)
12311231
return afs_fs_store_data64(server, wb, first, last, offset, to,
1232-
size, pos, i_size, wait_mode);
1232+
size, pos, i_size, async);
12331233

12341234
call = afs_alloc_flat_call(&afs_RXFSStoreData,
12351235
(4 + 6 + 3) * 4,
@@ -1268,7 +1268,7 @@ int afs_fs_store_data(struct afs_server *server, struct afs_writeback *wb,
12681268
*bp++ = htonl(size);
12691269
*bp++ = htonl(i_size);
12701270

1271-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1271+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
12721272
}
12731273

12741274
/*
@@ -1330,7 +1330,7 @@ static const struct afs_call_type afs_RXFSStoreData64_as_Status = {
13301330
*/
13311331
static int afs_fs_setattr_size64(struct afs_server *server, struct key *key,
13321332
struct afs_vnode *vnode, struct iattr *attr,
1333-
const struct afs_wait_mode *wait_mode)
1333+
bool async)
13341334
{
13351335
struct afs_call *call;
13361336
__be32 *bp;
@@ -1369,7 +1369,7 @@ static int afs_fs_setattr_size64(struct afs_server *server, struct key *key,
13691369
*bp++ = htonl(attr->ia_size >> 32); /* new file length */
13701370
*bp++ = htonl((u32) attr->ia_size);
13711371

1372-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1372+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
13731373
}
13741374

13751375
/*
@@ -1378,7 +1378,7 @@ static int afs_fs_setattr_size64(struct afs_server *server, struct key *key,
13781378
*/
13791379
static int afs_fs_setattr_size(struct afs_server *server, struct key *key,
13801380
struct afs_vnode *vnode, struct iattr *attr,
1381-
const struct afs_wait_mode *wait_mode)
1381+
bool async)
13821382
{
13831383
struct afs_call *call;
13841384
__be32 *bp;
@@ -1389,7 +1389,7 @@ static int afs_fs_setattr_size(struct afs_server *server, struct key *key,
13891389
ASSERT(attr->ia_valid & ATTR_SIZE);
13901390
if (attr->ia_size >> 32)
13911391
return afs_fs_setattr_size64(server, key, vnode, attr,
1392-
wait_mode);
1392+
async);
13931393

13941394
call = afs_alloc_flat_call(&afs_RXFSStoreData_as_Status,
13951395
(4 + 6 + 3) * 4,
@@ -1417,7 +1417,7 @@ static int afs_fs_setattr_size(struct afs_server *server, struct key *key,
14171417
*bp++ = 0; /* size of write */
14181418
*bp++ = htonl(attr->ia_size); /* new file length */
14191419

1420-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1420+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
14211421
}
14221422

14231423
/*
@@ -1426,14 +1426,14 @@ static int afs_fs_setattr_size(struct afs_server *server, struct key *key,
14261426
*/
14271427
int afs_fs_setattr(struct afs_server *server, struct key *key,
14281428
struct afs_vnode *vnode, struct iattr *attr,
1429-
const struct afs_wait_mode *wait_mode)
1429+
bool async)
14301430
{
14311431
struct afs_call *call;
14321432
__be32 *bp;
14331433

14341434
if (attr->ia_valid & ATTR_SIZE)
14351435
return afs_fs_setattr_size(server, key, vnode, attr,
1436-
wait_mode);
1436+
async);
14371437

14381438
_enter(",%x,{%x:%u},,",
14391439
key_serial(key), vnode->fid.vid, vnode->fid.vnode);
@@ -1459,7 +1459,7 @@ int afs_fs_setattr(struct afs_server *server, struct key *key,
14591459

14601460
xdr_encode_AFS_StoreStatus(&bp, attr);
14611461

1462-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1462+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
14631463
}
14641464

14651465
/*
@@ -1661,7 +1661,7 @@ int afs_fs_get_volume_status(struct afs_server *server,
16611661
struct key *key,
16621662
struct afs_vnode *vnode,
16631663
struct afs_volume_status *vs,
1664-
const struct afs_wait_mode *wait_mode)
1664+
bool async)
16651665
{
16661666
struct afs_call *call;
16671667
__be32 *bp;
@@ -1691,7 +1691,7 @@ int afs_fs_get_volume_status(struct afs_server *server,
16911691
bp[0] = htonl(FSGETVOLUMESTATUS);
16921692
bp[1] = htonl(vnode->fid.vid);
16931693

1694-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1694+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
16951695
}
16961696

16971697
/*
@@ -1753,7 +1753,7 @@ int afs_fs_set_lock(struct afs_server *server,
17531753
struct key *key,
17541754
struct afs_vnode *vnode,
17551755
afs_lock_type_t type,
1756-
const struct afs_wait_mode *wait_mode)
1756+
bool async)
17571757
{
17581758
struct afs_call *call;
17591759
__be32 *bp;
@@ -1777,7 +1777,7 @@ int afs_fs_set_lock(struct afs_server *server,
17771777
*bp++ = htonl(vnode->fid.unique);
17781778
*bp++ = htonl(type);
17791779

1780-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1780+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
17811781
}
17821782

17831783
/*
@@ -1786,7 +1786,7 @@ int afs_fs_set_lock(struct afs_server *server,
17861786
int afs_fs_extend_lock(struct afs_server *server,
17871787
struct key *key,
17881788
struct afs_vnode *vnode,
1789-
const struct afs_wait_mode *wait_mode)
1789+
bool async)
17901790
{
17911791
struct afs_call *call;
17921792
__be32 *bp;
@@ -1809,7 +1809,7 @@ int afs_fs_extend_lock(struct afs_server *server,
18091809
*bp++ = htonl(vnode->fid.vnode);
18101810
*bp++ = htonl(vnode->fid.unique);
18111811

1812-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1812+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
18131813
}
18141814

18151815
/*
@@ -1818,7 +1818,7 @@ int afs_fs_extend_lock(struct afs_server *server,
18181818
int afs_fs_release_lock(struct afs_server *server,
18191819
struct key *key,
18201820
struct afs_vnode *vnode,
1821-
const struct afs_wait_mode *wait_mode)
1821+
bool async)
18221822
{
18231823
struct afs_call *call;
18241824
__be32 *bp;
@@ -1841,5 +1841,5 @@ int afs_fs_release_lock(struct afs_server *server,
18411841
*bp++ = htonl(vnode->fid.vnode);
18421842
*bp++ = htonl(vnode->fid.unique);
18431843

1844-
return afs_make_call(&server->addr, call, GFP_NOFS, wait_mode);
1844+
return afs_make_call(&server->addr, call, GFP_NOFS, async);
18451845
}

0 commit comments

Comments
 (0)