Date: Sun, 1 Dec 2024 19:20:00 -0500 From: J David <j.david.lists@gmail.com> To: FreeBSD FS <freebsd-fs@freebsd.org> Subject: NFS 4.2 "RPC struct is bad" revisited (with much more detail) Message-ID: <CABXB=RT7Sb76bPZg3k%2BM5wt3q1Ern56zmzyviN0_zdj27pqQLw@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
We have continued to experience client-side corruption with NFS 4.2 on FreeBSD 14.1 clients running against Debian NFS servers. However, I was recently handed a reproducible way to trigger this issue. With PHP and composer installed, in a writable NFS directory: $ ls -ld . drwxrwxrwx 3 287028 287028 3 Dec 1 23:01 . $ df -h . Filesystem Size Used Avail Capacity Mounted on fs:/deleteme 10G 174M 9.8G 2% /mnt Per "nfsstat -m" the flags are: nfsv4,minorversion=2,tcp,resvport,nconnect=1,hard,cto,sec=sys,acdirmin=3,acdirmax=60,acregmin=5,acregmax=60,nametimeo=60,negnametimeo=60,rsize=65536,wsize=65536,readdirsize=65536,readahead=1,wcommitsize=8388608,timeout=120,retrans=2147483647 So I run: $ composer create-project drupal/recommended-project:10.3.10 drupal10 After quite a lot of output, this finishes successfully. However: $ du -sxk drupal10/ du: drupal10/web/core/assets/vendor/ckeditor5/block-quote/translations: RPC struct is bad du: drupal10/web/core/assets/vendor/ckeditor5/list/translations: RPC struct is bad du: drupal10/web/core/assets/vendor/ckeditor5/heading/translations: RPC struct is bad 127246 drupal10/ >From that client, these directories (and it seems like it's always these three directories) appear to be empty, not even . or .. present: $ ls -la drupal10/web/core/assets/vendor/ckeditor5/block-quote/translations total 0 $ ls -la drupal10/web/core/assets/vendor/ckeditor5/list/translations total 0 $ ls -la drupal10/web/core/assets/vendor/ckeditor5/heading/translations total 0 I don't know why it's these directories specifically, but it's very consistent. The filenames in all three directories seem to be the same: 65 small javascript files with two-letter country codes for filenames (e.g., , though the actual content of the files differs. E.g., all three directories have a zh.js but the contents of each zh.js file is different. This behavior will survive unmounting & remounting the filesystem. If I mount the same filesystem again at a different location on the same client, it will be the same there. It can even survive reboots of the affected client. At the same time, if I look at these same directories from another FreeBSD client at any point, everything is fine: $ du -sxk drupal10 128109 drupal10 $ ls -la drupal10/web/core/assets/vendor/ckeditor5/block-quote/translations | wc 65 578 2906 $ ls -la drupal10/web/core/assets/vendor/ckeditor5/heading/translations | wc 65 578 2903 The NFS server also gives the correct results: $ du -sxk drupal10/ 128109 drupal10/ $ ls -la drupal10/web/core/assets/vendor/ckeditor5/block-quote/translations | wc 65 578 2843 This problem does appear to be related to READDIR/listing directory contents. If (using some other client) I get the names of files in the affected directory, I can read that with no problem: $ sha1 drupal10/web/core/assets/vendor/ckeditor5/heading/translations/zh.js SHA1 (drupal10/web/core/assets/vendor/ckeditor5/heading/translations/zh.js) = cb1d75ec267f5673e99b3d0afa963f7c8656cb48 $ ls -l drupal10/web/core/assets/vendor/ckeditor5/heading/translations/zh.js -rw-rw-r-- 1 deleteme deleteme 467 Nov 22 12:51 drupal10/web/core/assets/vendor/ckeditor5/heading/translations/zh.js Under 14.1, if I wait a bit, this will slowly fix itself. After a few minutes, one of the directories will become listable. Then a few minutes later a second one. Then, a few more minutes after that, the third. The correction appears to happen on a per-mount basis. I.e., if I mount the same filesystem three times at three different locations, they will all observe the issue initially, and it will clear at different rates. Sometimes it might take hours. This is a slight change from the behavior under 13.3 where once this issue occurred, it was effectively permanent until the affected directories were removed from another client. This is the part where it makes sense to obtain a pcap showing the traffic that causes the "RPC struct is bad" error. That's frequently cached. Easier said than done. On the client, frequently, after testing this: # tcpdump -vvv -i net1 -n -w rpc-struct-is-bad.pcap host fs tcpdump: listening on net1, link-type EN10MB (Ethernet), snapshot length 262144 bytes ^C0 packets captured 362 packets received by filter 0 packets dropped by kernel So this behavior appears to be cached on the client. After waiting a bit (much more than 60 seconds), it looks like the client did try again, and I think I got it. I'll include the Wireshark output below. Hopefully all of this is enough to shed some light on the issue. Thanks for any feedback! Client request, as decoded by Wireshark: Remote Procedure Call, Type:Call XID:0x3c21500b Fragment header: Last fragment, 220 bytes 1... .... .... .... .... .... .... .... = Last Fragment: Yes .000 0000 0000 0000 0000 0000 1101 1100 = Fragment Length: 220 XID: 0x3c21500b (1008816139) Message Type: Call (0) RPC Version: 2 Program: NFS (100003) Program Version: 4 Procedure: COMPOUND (1) [The reply to this request is in frame 22] Credentials Flavor: AUTH_UNIX (1) Length: 28 Stamp: 0x674ce3c9 Machine Name: h3 length: 2 contents: h3 fill bytes: opaque data UID: 287028 GID: 287028 Auxiliary GIDs (1) [25000] GID: 25000 Verifier Flavor: AUTH_NULL (0) Length: 0 Network File System, Ops(4): SEQUENCE, PUTFH, READDIR, GETATTR [Program Version: 4] [V4 Procedure: COMPOUND (1)] Tag: Readdir length: 7 contents: Readdir fill bytes: opaque data minorversion: 2 Operations (count: 4): SEQUENCE, PUTFH, READDIR, GETATTR Opcode: SEQUENCE (53) sessionid: 67e43365b78a01ddd1e5050000000000 seqid: 0x000f73d7 slot id: 0 high slot id: 0 cache this?: No Opcode: PUTFH (22) FileHandle length: 32 [hash (CRC-32): 0x87cdc24b] FileHandle: 0100060153d075cb002f4a8000000000000000000a00d6bd000000003cf1ea00 Opcode: READDIR (26) cookie: 0 cookie_verf: 0 dircount: 8704 maxcount: 8704 Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) reqd_attr: RDAttr_Error (11) reco_attr: FileId (20) Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) Opcode: GETATTR (9) Attr mask[0]: 0x4010011b (Supported_Attrs, Type, Change, Size, FSID, FileId, MaxRead) reqd_attr: Supported_Attrs (0) reqd_attr: Type (1) reqd_attr: Change (3) reqd_attr: Size (4) reqd_attr: FSID (8) reco_attr: FileId (20) reco_attr: MaxRead (30) Attr mask[1]: 0x0034a23a (Mode, NumLinks, Owner, Owner_Group, RawDev, Space_Used, Time_Access, Time_Create, Time_Metadata, Time_Modify) reco_attr: Mode (33) reco_attr: NumLinks (35) reco_attr: Owner (36) reco_attr: Owner_Group (37) reco_attr: RawDev (41) reco_attr: Space_Used (45) reco_attr: Time_Access (47) reco_attr: Time_Create (50) reco_attr: Time_Metadata (52) reco_attr: Time_Modify (53) [Main Opcode: READDIR (26)] And here's the server's reply (reassembled from two TCP packets): Remote Procedure Call, Type:Reply XID:0x3c21500b Fragment header: Last fragment, 4268 bytes 1... .... .... .... .... .... .... .... = Last Fragment: Yes .000 0000 0000 0000 0001 0000 1010 1100 = Fragment Length: 4268 XID: 0x3c21500b (1008816139) Message Type: Reply (1) [Program: NFS (100003)] [Program Version: 4] [Procedure: COMPOUND (1)] Reply State: accepted (0) [This is a reply to a request in frame 19] [Time from request: 0.000216000 seconds] Verifier Flavor: AUTH_NULL (0) Length: 0 Accept State: RPC executed successfully (0) Network File System, Ops(4): SEQUENCE PUTFH READDIR GETATTR [Program Version: 4] [V4 Procedure: COMPOUND (1)] Status: NFS4_OK (0) Tag: Readdir length: 7 contents: Readdir fill bytes: opaque data Operations (count: 4) Opcode: SEQUENCE (53) Status: NFS4_OK (0) sessionid: 67e43365b78a01ddd1e5050000000000 seqid: 0x000f73d7 slot id: 0 high slot id: 29 target high slot id: 29 status flags: 0x00000001, SEQ4_STATUS_CB_PATH_DOWN .... .... .... .... .... .... .... ...1 = SEQ4_STATUS_CB_PATH_DOWN: Set .... .... .... .... .... .... .... ..0. = SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRING: Not set .... .... .... .... .... .... .... .0.. = SEQ4_STATUS_CB_GSS_CONTEXTS_EXPIRED: Not set .... .... .... .... .... .... .... 0... = SEQ4_STATUS_EXPIRED_ALL_STATE_REVOKED: Not set .... .... .... .... .... .... ...0 .... = SEQ4_STATUS_EXPIRED_SOME_STATE_REVOKED: Not set .... .... .... .... .... .... ..0. .... = SEQ4_STATUS_ADMIN_STATE_REVOKED: Not set .... .... .... .... .... .... .0.. .... = SEQ4_STATUS_RECALLABLE_STATE_REVOKED: Not set .... .... .... .... .... .... 0... .... = SEQ4_STATUS_LEASE_MOVED: Not set .... .... .... .... .... ...0 .... .... = SEQ4_STATUS_RESTART_RECLAIM_NEEDED: Not set .... .... .... .... .... ..0. .... .... = SEQ4_STATUS_CB_PATH_DOWN_SESSION: Not set .... .... .... .... .... .0.. .... .... = SEQ4_STATUS_BACKCHANNEL_FAULT: Not set .... .... .... .... .... 0... .... .... = SEQ4_STATUS_DEVID_CHANGED: Not set .... .... .... .... ...0 .... .... .... = SEQ4_STATUS_DEVID_DELETED: Not set Opcode: PUTFH (22) Status: NFS4_OK (0) Opcode: READDIR (26) Status: NFS4_OK (0) verifier: 0x0000000000000000 Directory Listing Entry: eu.js Value Follows: Yes cookie: 269690263 Name: eu.js length: 5 contents: eu.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 47869 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bafd Entry: gl.js Value Follows: Yes cookie: 276571741 Name: gl.js length: 5 contents: gl.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48703 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000be3f Entry: ku.js Value Follows: Yes cookie: 282097910 Name: ku.js length: 5 contents: ku.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48705 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000be41 Entry: nl.js Value Follows: Yes cookie: 283039116 Name: nl.js length: 5 contents: nl.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48371 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcf3 Entry: pt.js Value Follows: Yes cookie: 283739169 Name: pt.js length: 5 contents: pt.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48609 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bde1 Entry: de.js Value Follows: Yes cookie: 286454349 Name: de.js length: 5 contents: de.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48426 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd2a Entry: pt-br.js Value Follows: Yes cookie: 287836878 Name: pt-br.js length: 8 contents: pt-br.js Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48217 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bc59 Entry: uz.js Value Follows: Yes cookie: 289190542 Name: uz.js length: 5 contents: uz.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48083 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bbd3 Entry: lt.js Value Follows: Yes cookie: 292503267 Name: lt.js length: 5 contents: lt.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48369 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcf1 Entry: cs.js Value Follows: Yes cookie: 292958093 Name: cs.js length: 5 contents: cs.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48700 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000be3c Entry: sk.js Value Follows: Yes cookie: 293741377 Name: sk.js length: 5 contents: sk.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48706 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000be42 Entry: ms.js Value Follows: Yes cookie: 297104108 Name: ms.js length: 5 contents: ms.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48081 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bbd1 Entry: et.js Value Follows: Yes cookie: 298700082 Name: et.js length: 5 contents: et.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48429 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd2d Entry: tk.js Value Follows: Yes cookie: 300125681 Name: tk.js length: 5 contents: tk.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 47955 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bb53 Entry: sr-latn.js Value Follows: Yes cookie: 309089285 Name: sr-latn.js length: 10 contents: sr-latn.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48436 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd34 Entry: no.js Value Follows: Yes cookie: 314436706 Name: no.js length: 5 contents: no.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48372 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcf4 Entry: lv.js Value Follows: Yes cookie: 315813800 Name: lv.js length: 5 contents: lv.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48431 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd2f Entry: fi.js Value Follows: Yes cookie: 320584473 Name: fi.js length: 5 contents: fi.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48214 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bc56 Entry: ro.js Value Follows: Yes cookie: 322655904 Name: ro.js length: 5 contents: ro.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48433 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd31 Entry: zh.js Value Follows: Yes cookie: 323217790 Name: zh.js length: 5 contents: zh.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48375 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcf7 Entry: th.js Value Follows: Yes cookie: 327201823 Name: th.js length: 5 contents: th.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 47954 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bb52 Entry: hi.js Value Follows: Yes cookie: 332981880 Name: hi.js length: 5 contents: hi.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48430 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd2e Entry: uk.js Value Follows: Yes cookie: 337730183 Name: uk.js length: 5 contents: uk.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48220 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bc5c Entry: sl.js Value Follows: Yes cookie: 345684024 Name: sl.js length: 5 contents: sl.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48434 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd32 Entry: bs.js Value Follows: Yes cookie: 347404539 Name: bs.js length: 5 contents: bs.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48602 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bdda Entry: es.js Value Follows: Yes cookie: 349525579 Name: es.js length: 5 contents: es.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48428 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd2c Entry: az.js Value Follows: Yes cookie: 366619883 Name: az.js length: 5 contents: az.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 47868 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bafc Entry: ca.js Value Follows: Yes cookie: 369688170 Name: ca.js length: 5 contents: ca.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48603 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bddb Entry: da.js Value Follows: Yes cookie: 376000730 Name: da.js length: 5 contents: da.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48604 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bddc Entry: ja.js Value Follows: Yes cookie: 380243387 Name: ja.js length: 5 contents: ja.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48078 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bbce Entry: bg.js Value Follows: Yes cookie: 386685632 Name: bg.js length: 5 contents: bg.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48600 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bdd8 Entry: hy.js Value Follows: Yes cookie: 387704532 Name: hy.js length: 5 contents: hy.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48216 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bc58 Entry: jv.js Value Follows: Yes cookie: 393320046 Name: jv.js length: 5 contents: jv.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48079 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bbcf Entry: sq.js Value Follows: Yes cookie: 403421065 Name: sq.js length: 5 contents: sq.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48435 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd33 Entry: bn.js Value Follows: Yes cookie: 405141322 Name: bn.js length: 5 contents: bn.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48601 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bdd9 Entry: en-gb.js Value Follows: Yes cookie: 405890201 Name: en-gb.js length: 8 contents: en-gb.js Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48701 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000be3d Entry: kn.js Value Follows: Yes cookie: 411501723 Name: kn.js length: 5 contents: kn.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48368 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcf0 Entry: de-ch.js Value Follows: Yes cookie: 417321901 Name: de-ch.js length: 8 contents: de-ch.js Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48605 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bddd Entry: ko.js Value Follows: Yes cookie: 425323582 Name: ko.js length: 5 contents: ko.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48704 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000be40 Entry: eo.js Value Follows: Yes cookie: 429568351 Name: eo.js length: 5 contents: eo.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48606 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bdde Entry: vi.js Value Follows: Yes cookie: 433844822 Name: vi.js length: 5 contents: vi.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48611 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bde3 Entry: tr.js Value Follows: Yes cookie: 436805847 Name: tr.js length: 5 contents: tr.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48610 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bde2 Entry: he.js Value Follows: Yes cookie: 441713088 Name: he.js length: 5 contents: he.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48077 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bbcd Entry: sr.js Value Follows: Yes cookie: 443059815 Name: sr.js length: 5 contents: sr.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48219 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bc5b Entry: it.js Value Follows: Yes cookie: 445333183 Name: it.js length: 5 contents: it.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 47953 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bb51 Entry: ru.js Value Follows: Yes cookie: 447922792 Name: ru.js length: 5 contents: ru.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48218 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bc5a Entry: pl.js Value Follows: Yes cookie: 450740642 Name: pl.js length: 5 contents: pl.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48432 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd30 Entry: km.js Value Follows: Yes cookie: 451165557 Name: km.js length: 5 contents: km.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48080 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bbd0 Entry: nb.js Value Follows: Yes cookie: 451928959 Name: nb.js length: 5 contents: nb.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48608 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bde0 Entry: ar.js Value Follows: Yes cookie: 455961028 Name: ar.js length: 5 contents: ar.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48599 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bdd7 Entry: fr.js Value Follows: Yes cookie: 458016628 Name: fr.js length: 5 contents: fr.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48702 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000be3e Entry: zh-cn.js Value Follows: Yes cookie: 458120880 Name: zh-cn.js length: 8 contents: zh-cn.js Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48374 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcf6 Entry: hr.js Value Follows: Yes cookie: 462395925 Name: hr.js length: 5 contents: hr.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48607 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bddf Entry: el.js Value Follows: Yes cookie: 469338289 Name: el.js length: 5 contents: el.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48366 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcee Entry: en-au.js Value Follows: Yes cookie: 474580618 Name: en-au.js length: 8 contents: en-au.js Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48427 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd2b Entry: sv.js Value Follows: Yes cookie: 487795952 Name: sv.js length: 5 contents: sv.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48437 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bd35 Entry: ug.js Value Follows: Yes cookie: 497925439 Name: ug.js length: 5 contents: ug.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48373 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcf5 Entry: fa.js Value Follows: Yes cookie: 502070838 Name: fa.js length: 5 contents: fa.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 47870 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bafe Entry: id.js Value Follows: Yes cookie: 508050963 Name: id.js length: 5 contents: id.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48367 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcef Entry: hu.js Value Follows: Yes cookie: 513212780 Name: hu.js length: 5 contents: hu.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48215 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bc57 Entry: ur.js Value Follows: Yes cookie: 533460897 Name: ur.js length: 5 contents: ur.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48082 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bbd2 Entry: ne.js Value Follows: Yes cookie: 536311814 Name: ne.js length: 5 contents: ne.js fill bytes: opaque data Attr mask[0]: 0x00100802 (Type, RDAttr_Error, FileId) reqd_attr: Type (1) ftype4: NF4REG (1) reqd_attr: RDAttr_Error (11) Status: NFS4_OK (0) reco_attr: FileId (20) fileid: 48370 Attr mask[1]: 0x00800000 (Mounted_on_FileId) reco_attr: Mounted_on_FileId (55) fileid: 0x000000000000bcf2 Value Follows: No EOF: Yes Opcode: GETATTR (9) Status: NFS4_OK (0) [Expert Info (Warning/Protocol): Per RFCs 3530 and 5661 an attribute mask is required but was not provided.] [Per RFCs 3530 and 5661 an attribute mask is required but was not provided.] [Severity level: Warning] [Group: Protocol] [Main Opcode: READDIR (26)]
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CABXB=RT7Sb76bPZg3k%2BM5wt3q1Ern56zmzyviN0_zdj27pqQLw>