colibri_imx6: fix video stdout in default environment
[oweals/u-boot.git] / net / nfs.h
index 45da246aa1e1bfa6ad8d7b267ab0a41fde8e231d..68ada0efeb9ba370e69740438cb27087e9ac8deb 100644 (file)
--- a/net/nfs.h
+++ b/net/nfs.h
@@ -1,7 +1,6 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
  * (C) Masami Komiya <mkomiya@sonare.it> 2004
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #ifndef __NFS_H__
 #define NFSERR_ISDIR    21
 #define NFSERR_INVAL    22
 
-/* Block size used for NFS read accesses.  A RPC reply packet (including  all
+/*
+ * Block size used for NFS read accesses.  A RPC reply packet (including  all
  * headers) must fit within a single Ethernet frame to avoid fragmentation.
- * However, if CONFIG_IP_DEFRAG is set, the config file may want to use a
- * bigger value. In any case, most NFS servers are optimized for a power of 2.
+ * However, if CONFIG_IP_DEFRAG is set, a bigger value could be used.  In any
+ * case, most NFS servers are optimized for a power of 2.
  */
-#ifdef CONFIG_NFS_READ_SIZE
-#define NFS_READ_SIZE CONFIG_NFS_READ_SIZE
-#else
-#define NFS_READ_SIZE 1024 /* biggest power of two that fits Ether frame */
-#endif
+#define NFS_READ_SIZE  1024    /* biggest power of two that fits Ether frame */
+#define NFS_MAX_ATTRS  26
 
 /* Values for Accept State flag on RPC answers (See: rfc1831) */
 enum rpc_accept_stat {
@@ -59,7 +56,8 @@ enum rpc_accept_stat {
 
 struct rpc_t {
        union {
-               uint8_t data[2048];
+               uint8_t data[NFS_READ_SIZE + (6 + NFS_MAX_ATTRS) *
+                       sizeof(uint32_t)];
                struct {
                        uint32_t id;
                        uint32_t type;
@@ -76,7 +74,8 @@ struct rpc_t {
                        uint32_t verifier;
                        uint32_t v2;
                        uint32_t astatus;
-                       uint32_t data[NFS_READ_SIZE];
+                       uint32_t data[NFS_READ_SIZE / sizeof(uint32_t) +
+                               NFS_MAX_ATTRS];
                } reply;
        } u;
 };