diff options
| -rw-r--r-- | fs/nfs/callback_proc.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/fs/nfs/callback_proc.c b/fs/nfs/callback_proc.c index 2435af56b87e..a50d7813e3ea 100644 --- a/fs/nfs/callback_proc.c +++ b/fs/nfs/callback_proc.c | |||
| @@ -572,7 +572,7 @@ out: | |||
| 572 | } | 572 | } |
| 573 | 573 | ||
| 574 | static bool | 574 | static bool |
| 575 | validate_bitmap_values(unsigned long mask) | 575 | validate_bitmap_values(unsigned int mask) |
| 576 | { | 576 | { |
| 577 | return (mask & ~RCA4_TYPE_MASK_ALL) == 0; | 577 | return (mask & ~RCA4_TYPE_MASK_ALL) == 0; |
| 578 | } | 578 | } |
| @@ -596,17 +596,15 @@ __be32 nfs4_callback_recallany(void *argp, void *resp, | |||
| 596 | goto out; | 596 | goto out; |
| 597 | 597 | ||
| 598 | status = cpu_to_be32(NFS4_OK); | 598 | status = cpu_to_be32(NFS4_OK); |
| 599 | if (test_bit(RCA4_TYPE_MASK_RDATA_DLG, (const unsigned long *) | 599 | if (args->craa_type_mask & BIT(RCA4_TYPE_MASK_RDATA_DLG)) |
| 600 | &args->craa_type_mask)) | ||
| 601 | flags = FMODE_READ; | 600 | flags = FMODE_READ; |
| 602 | if (test_bit(RCA4_TYPE_MASK_WDATA_DLG, (const unsigned long *) | 601 | if (args->craa_type_mask & BIT(RCA4_TYPE_MASK_WDATA_DLG)) |
| 603 | &args->craa_type_mask)) | ||
| 604 | flags |= FMODE_WRITE; | 602 | flags |= FMODE_WRITE; |
| 605 | if (test_bit(RCA4_TYPE_MASK_FILE_LAYOUT, (const unsigned long *) | ||
| 606 | &args->craa_type_mask)) | ||
| 607 | pnfs_recall_all_layouts(cps->clp); | ||
| 608 | if (flags) | 603 | if (flags) |
| 609 | nfs_expire_unused_delegation_types(cps->clp, flags); | 604 | nfs_expire_unused_delegation_types(cps->clp, flags); |
| 605 | |||
| 606 | if (args->craa_type_mask & BIT(RCA4_TYPE_MASK_FILE_LAYOUT)) | ||
| 607 | pnfs_recall_all_layouts(cps->clp); | ||
| 610 | out: | 608 | out: |
| 611 | dprintk("%s: exit with status = %d\n", __func__, ntohl(status)); | 609 | dprintk("%s: exit with status = %d\n", __func__, ntohl(status)); |
| 612 | return status; | 610 | return status; |
