diff options
| author | Jiri Kosina <jkosina@suse.cz> | 2017-05-02 12:02:41 +0300 |
|---|---|---|
| committer | Jiri Kosina <jkosina@suse.cz> | 2017-05-02 12:02:41 +0300 |
| commit | 4d6ca227c768b50b05cf183974b40abe444e9d0c (patch) | |
| tree | bf953d8e895281053548b9967a2c4b58d641df00 /fs/nfs/flexfilelayout/flexfilelayout.h | |
| parent | 800f3eef8ebc1264e9c135bfa892c8ae41fa4792 (diff) | |
| parent | af22a610bc38508d5ea760507d31be6b6983dfa8 (diff) | |
| download | linux-4d6ca227c768b50b05cf183974b40abe444e9d0c.tar.xz | |
Merge branch 'for-4.12/asus' into for-linus
Diffstat (limited to 'fs/nfs/flexfilelayout/flexfilelayout.h')
| -rw-r--r-- | fs/nfs/flexfilelayout/flexfilelayout.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/fs/nfs/flexfilelayout/flexfilelayout.h b/fs/nfs/flexfilelayout/flexfilelayout.h index f4f39b0ab09b..98b34c9b0564 100644 --- a/fs/nfs/flexfilelayout/flexfilelayout.h +++ b/fs/nfs/flexfilelayout/flexfilelayout.h @@ -175,7 +175,19 @@ ff_layout_no_read_on_rw(struct pnfs_layout_segment *lseg) static inline bool ff_layout_test_devid_unavailable(struct nfs4_deviceid_node *node) { - return nfs4_test_deviceid_unavailable(node); + /* + * Flexfiles should never mark a DS unavailable, but if it does + * print a (ratelimited) warning as this can affect performance. + */ + if (nfs4_test_deviceid_unavailable(node)) { + u32 *p = (u32 *)node->deviceid.data; + + pr_warn_ratelimited("NFS: flexfiles layout referencing an " + "unavailable device [%x%x%x%x]\n", + p[0], p[1], p[2], p[3]); + return true; + } + return false; } static inline int |
