diff options
author | Christian Borntraeger <borntraeger@de.ibm.com> | 2017-03-22 20:54:52 +0300 |
---|---|---|
committer | Christian Borntraeger <borntraeger@de.ibm.com> | 2017-03-22 20:54:52 +0300 |
commit | 7c2b3e0ddc063f61a201ccb70a121fecc8373a49 (patch) | |
tree | 6dfb348a27459cb2058124c1d8417680c194ed54 /fs/nfs/flexfilelayout/flexfilelayout.h | |
parent | 947b897204c417d22ad90e5f354858d78de15a07 (diff) | |
parent | 916cda1aa1b412d7cf2991c3af7479544942d121 (diff) | |
download | linux-7c2b3e0ddc063f61a201ccb70a121fecc8373a49.tar.xz |
Merge remote-tracking branch 's390/guarded-storage' into kvms390/next
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 |