| .. | .. |
|---|
| 169 | 169 | spin_unlock(&fp->fi_lock); |
|---|
| 170 | 170 | |
|---|
| 171 | 171 | if (!nfsd4_layout_ops[ls->ls_layout_type]->disable_recalls) |
|---|
| 172 | | - vfs_setlease(ls->ls_file, F_UNLCK, NULL, (void **)&ls); |
|---|
| 173 | | - fput(ls->ls_file); |
|---|
| 172 | + vfs_setlease(ls->ls_file->nf_file, F_UNLCK, NULL, (void **)&ls); |
|---|
| 173 | + nfsd_file_put(ls->ls_file); |
|---|
| 174 | 174 | |
|---|
| 175 | 175 | if (ls->ls_recalled) |
|---|
| 176 | 176 | atomic_dec(&ls->ls_stid.sc_file->fi_lo_recalls); |
|---|
| .. | .. |
|---|
| 197 | 197 | fl->fl_end = OFFSET_MAX; |
|---|
| 198 | 198 | fl->fl_owner = ls; |
|---|
| 199 | 199 | fl->fl_pid = current->tgid; |
|---|
| 200 | | - fl->fl_file = ls->ls_file; |
|---|
| 200 | + fl->fl_file = ls->ls_file->nf_file; |
|---|
| 201 | 201 | |
|---|
| 202 | 202 | status = vfs_setlease(fl->fl_file, fl->fl_type, &fl, NULL); |
|---|
| 203 | 203 | if (status) { |
|---|
| .. | .. |
|---|
| 236 | 236 | NFSPROC4_CLNT_CB_LAYOUT); |
|---|
| 237 | 237 | |
|---|
| 238 | 238 | if (parent->sc_type == NFS4_DELEG_STID) |
|---|
| 239 | | - ls->ls_file = get_file(fp->fi_deleg_file); |
|---|
| 239 | + ls->ls_file = nfsd_file_get(fp->fi_deleg_file); |
|---|
| 240 | 240 | else |
|---|
| 241 | 241 | ls->ls_file = find_any_file(fp); |
|---|
| 242 | 242 | BUG_ON(!ls->ls_file); |
|---|
| 243 | 243 | |
|---|
| 244 | 244 | if (nfsd4_layout_setlease(ls)) { |
|---|
| 245 | | - fput(ls->ls_file); |
|---|
| 245 | + nfsd_file_put(ls->ls_file); |
|---|
| 246 | 246 | put_nfs4_file(fp); |
|---|
| 247 | 247 | kmem_cache_free(nfs4_layout_stateid_cache, ls); |
|---|
| 248 | 248 | return NULL; |
|---|
| .. | .. |
|---|
| 626 | 626 | |
|---|
| 627 | 627 | argv[0] = (char *)nfsd_recall_failed; |
|---|
| 628 | 628 | argv[1] = addr_str; |
|---|
| 629 | | - argv[2] = ls->ls_file->f_path.mnt->mnt_sb->s_id; |
|---|
| 629 | + argv[2] = ls->ls_file->nf_file->f_path.mnt->mnt_sb->s_id; |
|---|
| 630 | 630 | argv[3] = NULL; |
|---|
| 631 | 631 | |
|---|
| 632 | 632 | error = call_usermodehelper(nfsd_recall_failed, argv, envp, |
|---|
| .. | .. |
|---|
| 656 | 656 | struct nfsd_net *nn; |
|---|
| 657 | 657 | ktime_t now, cutoff; |
|---|
| 658 | 658 | const struct nfsd4_layout_ops *ops; |
|---|
| 659 | | - LIST_HEAD(reaplist); |
|---|
| 660 | 659 | |
|---|
| 661 | 660 | |
|---|
| 662 | 661 | switch (task->tk_status) { |
|---|
| .. | .. |
|---|
| 682 | 681 | rpc_delay(task, HZ/100); /* 10 mili-seconds */ |
|---|
| 683 | 682 | return 0; |
|---|
| 684 | 683 | } |
|---|
| 685 | | - /* Fallthrough */ |
|---|
| 684 | + fallthrough; |
|---|
| 686 | 685 | default: |
|---|
| 687 | 686 | /* |
|---|
| 688 | 687 | * Unknown error or non-responding client, we'll need to fence. |
|---|
| .. | .. |
|---|
| 694 | 693 | ops->fence_client(ls); |
|---|
| 695 | 694 | else |
|---|
| 696 | 695 | nfsd4_cb_layout_fail(ls); |
|---|
| 697 | | - return -1; |
|---|
| 696 | + return 1; |
|---|
| 698 | 697 | case -NFS4ERR_NOMATCHING_LAYOUT: |
|---|
| 699 | 698 | trace_nfsd_layout_recall_done(&ls->ls_stid.sc_stateid); |
|---|
| 700 | 699 | task->tk_status = 0; |
|---|