Print this page
11083 support NFS server in zone
Portions contributed by: Dan Kruchinin <dan.kruchinin@nexenta.com>
Portions contributed by: Stepan Zastupov <stepan.zastupov@gmail.com>
Portions contributed by: Joyce McIntosh <joyce.mcintosh@nexenta.com>
Portions contributed by: Mike Zeller <mike@mikezeller.net>
Portions contributed by: Dan McDonald <danmcd@joyent.com>
Portions contributed by: Gordon Ross <gordon.w.ross@gmail.com>
Portions contributed by: Vitaliy Gusev <gusev.vitaliy@gmail.com>
Reviewed by: Rick McNeal <rick.mcneal@nexenta.com>
Reviewed by: Rob Gittins <rob.gittins@nexenta.com>
Reviewed by: Sanjay Nadkarni <sanjay.nadkarni@nexenta.com>
Reviewed by: Jason King <jbk@joyent.com>
Reviewed by: C Fraire <cfraire@me.com>
Change-Id: I22f289d357503f9b48a0bc2482cc4328a6d43d16

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/dtrace/sdt_subr.c
          +++ new/usr/src/uts/common/dtrace/sdt_subr.c
↓ open down ↓ 13 lines elided ↑ open up ↑
  14   14   * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  15   15   * If applicable, add the following below this CDDL HEADER, with the
  16   16   * fields enclosed by brackets "[]" replaced with your own identifying
  17   17   * information: Portions Copyright [yyyy] [name of copyright owner]
  18   18   *
  19   19   * CDDL HEADER END
  20   20   */
  21   21  /*
  22   22   * Copyright (c) 2004, 2010, Oracle and/or its affiliates. All rights reserved.
  23   23   * Copyright (c) 2012, Joyent, Inc. All rights reserved.
  24      - * Copyright 2017 Nexenta Systems, Inc.  All rights reserved.
       24 + * Copyright 2018 Nexenta Systems, Inc.  All rights reserved.
  25   25   */
  26   26  
  27   27  #include <sys/sdt_impl.h>
  28   28  
  29   29  static dtrace_pattr_t vtrace_attr = {
  30   30  { DTRACE_STABILITY_UNSTABLE, DTRACE_STABILITY_UNSTABLE, DTRACE_CLASS_ISA },
  31   31  { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN },
  32   32  { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN },
  33   33  { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN },
  34   34  { DTRACE_STABILITY_UNSTABLE, DTRACE_STABILITY_UNSTABLE, DTRACE_CLASS_ISA },
↓ open down ↓ 56 lines elided ↑ open up ↑
  91   91  };
  92   92  
  93   93  static dtrace_pattr_t iscsi_attr = {
  94   94  { DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA },
  95   95  { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN },
  96   96  { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN },
  97   97  { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_ISA },
  98   98  { DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA },
  99   99  };
 100  100  
      101 +static dtrace_pattr_t nfs_attr = {
      102 +{ DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA },
      103 +{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN },
      104 +{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN },
      105 +{ DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_ISA },
      106 +{ DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA },
      107 +};
      108 +
 101  109  static dtrace_pattr_t smb_attr = {
 102  110  { DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA },
 103  111  { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN },
 104  112  { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_UNKNOWN },
 105  113  { DTRACE_STABILITY_PRIVATE, DTRACE_STABILITY_PRIVATE, DTRACE_CLASS_ISA },
 106  114  { DTRACE_STABILITY_EVOLVING, DTRACE_STABILITY_EVOLVING, DTRACE_CLASS_ISA },
 107  115  };
 108  116  
 109  117  sdt_provider_t sdt_providers[] = {
 110  118          { "vtrace", "__vtrace_", &vtrace_attr },
↓ open down ↓ 2 lines elided ↑ open up ↑
 113  121          { "fpuinfo", "__fpuinfo_", &fpu_attr },
 114  122          { "sched", "__sched_", &stab_attr, DTRACE_PRIV_USER },
 115  123          { "proc", "__proc_", &stab_attr, DTRACE_PRIV_USER },
 116  124          { "io", "__io_", &stab_attr },
 117  125          { "ip", "__ip_", &stab_attr },
 118  126          { "tcp", "__tcp_", &stab_attr },
 119  127          { "udp", "__udp_", &stab_attr },
 120  128          { "mib", "__mib_", &stab_attr },
 121  129          { "fsinfo", "__fsinfo_", &fsinfo_attr },
 122  130          { "iscsi", "__iscsi_", &iscsi_attr },
 123      -        { "nfsv3", "__nfsv3_", &stab_attr },
 124      -        { "nfsv4", "__nfsv4_", &stab_attr },
      131 +        { "nfsv3", "__nfsv3_", &nfs_attr },
      132 +        { "nfsv4", "__nfsv4_", &nfs_attr },
 125  133          { "smb", "__smb_", &smb_attr },
 126  134          { "smb2", "__smb2_", &smb_attr },
 127  135          { "xpv", "__xpv_", &xpv_attr },
 128  136          { "fc", "__fc_", &fc_attr },
 129  137          { "srp", "__srp_", &fc_attr },
 130  138          { "sysevent", "__sysevent_", &stab_attr },
 131  139          { "sdt", NULL, &sdt_attr },
 132  140          { NULL }
 133  141  };
 134  142  
↓ open down ↓ 125 lines elided ↑ open up ↑
 260  268          { "iscsi", "xfer-done", 0, 0, "idm_conn_t *", "conninfo_t *" },
 261  269          { "iscsi", "xfer-done", 1, 0, "idm_conn_t *", "iscsiinfo_t *" },
 262  270          { "iscsi", "xfer-done", 2, 1, "uintptr_t", "xferinfo_t *" },
 263  271          { "iscsi", "xfer-done", 3, 2, "uint32_t"},
 264  272          { "iscsi", "xfer-done", 4, 3, "uintptr_t"},
 265  273          { "iscsi", "xfer-done", 5, 4, "uint32_t"},
 266  274          { "iscsi", "xfer-done", 6, 5, "uint32_t"},
 267  275          { "iscsi", "xfer-done", 7, 6, "uint32_t"},
 268  276          { "iscsi", "xfer-done", 8, 7, "int"},
 269  277  
 270      -        { "nfsv3", "op-getattr-start", 0, 0, "struct svc_req *",
 271      -            "conninfo_t *" },
 272      -        { "nfsv3", "op-getattr-start", 1, 1, "nfsv3oparg_t *",
 273      -            "nfsv3opinfo_t *" },
 274      -        { "nfsv3", "op-getattr-start", 2, 3, "GETATTR3args *" },
 275      -        { "nfsv3", "op-getattr-done", 0, 0, "struct svc_req *",
 276      -            "conninfo_t *" },
 277      -        { "nfsv3", "op-getattr-done", 1, 1, "nfsv3oparg_t *",
 278      -            "nfsv3opinfo_t *" },
 279      -        { "nfsv3", "op-getattr-done", 2, 3, "GETATTR3res *" },
 280      -        { "nfsv3", "op-setattr-start", 0, 0, "struct svc_req *",
 281      -            "conninfo_t *" },
 282      -        { "nfsv3", "op-setattr-start", 1, 1, "nfsv3oparg_t *",
 283      -            "nfsv3opinfo_t *" },
 284      -        { "nfsv3", "op-setattr-start", 2, 3, "SETATTR3args *" },
 285      -        { "nfsv3", "op-setattr-done", 0, 0, "struct svc_req *",
 286      -            "conninfo_t *" },
 287      -        { "nfsv3", "op-setattr-done", 1, 1, "nfsv3oparg_t *",
 288      -            "nfsv3opinfo_t *" },
 289      -        { "nfsv3", "op-setattr-done", 2, 3, "SETATTR3res *" },
 290      -        { "nfsv3", "op-lookup-start", 0, 0, "struct svc_req *",
 291      -            "conninfo_t *" },
 292      -        { "nfsv3", "op-lookup-start", 1, 1, "nfsv3oparg_t *",
 293      -            "nfsv3opinfo_t *" },
 294      -        { "nfsv3", "op-lookup-start", 2, 3, "LOOKUP3args *" },
 295      -        { "nfsv3", "op-lookup-done", 0, 0, "struct svc_req *",
 296      -            "conninfo_t *" },
 297      -        { "nfsv3", "op-lookup-done", 1, 1, "nfsv3oparg_t *",
 298      -            "nfsv3opinfo_t *" },
 299      -        { "nfsv3", "op-lookup-done", 2, 3, "LOOKUP3res *" },
 300      -        { "nfsv3", "op-access-start", 0, 0, "struct svc_req *",
 301      -            "conninfo_t *" },
 302      -        { "nfsv3", "op-access-start", 1, 1, "nfsv3oparg_t *",
 303      -            "nfsv3opinfo_t *" },
 304      -        { "nfsv3", "op-access-start", 2, 3, "ACCESS3args *" },
 305      -        { "nfsv3", "op-access-done", 0, 0, "struct svc_req *",
 306      -            "conninfo_t *" },
 307      -        { "nfsv3", "op-access-done", 1, 1, "nfsv3oparg_t *",
 308      -            "nfsv3opinfo_t *" },
 309      -        { "nfsv3", "op-access-done", 2, 3, "ACCESS3res *" },
 310      -        { "nfsv3", "op-commit-start", 0, 0, "struct svc_req *",
 311      -            "conninfo_t *" },
 312      -        { "nfsv3", "op-commit-start", 1, 1, "nfsv3oparg_t *",
 313      -            "nfsv3opinfo_t *" },
 314      -        { "nfsv3", "op-commit-start", 2, 3, "COMMIT3args *" },
 315      -        { "nfsv3", "op-commit-done", 0, 0, "struct svc_req *",
 316      -            "conninfo_t *" },
 317      -        { "nfsv3", "op-commit-done", 1, 1, "nfsv3oparg_t *",
 318      -            "nfsv3opinfo_t *" },
 319      -        { "nfsv3", "op-commit-done", 2, 3, "COMMIT3res *" },
 320      -        { "nfsv3", "op-create-start", 0, 0, "struct svc_req *",
 321      -            "conninfo_t *" },
 322      -        { "nfsv3", "op-create-start", 1, 1, "nfsv3oparg_t *",
 323      -            "nfsv3opinfo_t *" },
 324      -        { "nfsv3", "op-create-start", 2, 3, "CREATE3args *" },
 325      -        { "nfsv3", "op-create-done", 0, 0, "struct svc_req *",
 326      -            "conninfo_t *" },
 327      -        { "nfsv3", "op-create-done", 1, 1, "nfsv3oparg_t *",
 328      -            "nfsv3opinfo_t *" },
 329      -        { "nfsv3", "op-create-done", 2, 3, "CREATE3res *" },
 330      -        { "nfsv3", "op-fsinfo-start", 0, 0, "struct svc_req *",
 331      -            "conninfo_t *" },
 332      -        { "nfsv3", "op-fsinfo-start", 1, 1, "nfsv3oparg_t *",
 333      -            "nfsv3opinfo_t *" },
 334      -        { "nfsv3", "op-fsinfo-start", 2, 3, "FSINFO3args *" },
 335      -        { "nfsv3", "op-fsinfo-done", 0, 0, "struct svc_req *",
 336      -            "conninfo_t *" },
 337      -        { "nfsv3", "op-fsinfo-done", 1, 1, "nfsv3oparg_t *",
 338      -            "nfsv3opinfo_t *" },
 339      -        { "nfsv3", "op-fsinfo-done", 2, 3, "FSINFO3res *" },
 340      -        { "nfsv3", "op-fsstat-start", 0, 0, "struct svc_req *",
 341      -            "conninfo_t *" },
 342      -        { "nfsv3", "op-fsstat-start", 1, 1, "nfsv3oparg_t *",
 343      -            "nfsv3opinfo_t *" },
 344      -        { "nfsv3", "op-fsstat-start", 2, 3, "FSSTAT3args *" },
 345      -        { "nfsv3", "op-fsstat-done", 0, 0, "struct svc_req *",
 346      -            "conninfo_t *" },
 347      -        { "nfsv3", "op-fsstat-done", 1, 1, "nfsv3oparg_t *",
 348      -            "nfsv3opinfo_t *" },
 349      -        { "nfsv3", "op-fsstat-done", 2, 3, "FSSTAT3res *" },
 350      -        { "nfsv3", "op-link-start", 0, 0, "struct svc_req *",
 351      -            "conninfo_t *" },
 352      -        { "nfsv3", "op-link-start", 1, 1, "nfsv3oparg_t *",
 353      -            "nfsv3opinfo_t *" },
 354      -        { "nfsv3", "op-link-start", 2, 3, "LINK3args *" },
 355      -        { "nfsv3", "op-link-done", 0, 0, "struct svc_req *",
 356      -            "conninfo_t *" },
 357      -        { "nfsv3", "op-link-done", 1, 1, "nfsv3oparg_t *",
 358      -            "nfsv3opinfo_t *" },
 359      -        { "nfsv3", "op-link-done", 2, 3, "LINK3res *" },
 360      -        { "nfsv3", "op-mkdir-start", 0, 0, "struct svc_req *",
 361      -            "conninfo_t *" },
 362      -        { "nfsv3", "op-mkdir-start", 1, 1, "nfsv3oparg_t *",
 363      -            "nfsv3opinfo_t *" },
 364      -        { "nfsv3", "op-mkdir-start", 2, 3, "MKDIR3args *" },
 365      -        { "nfsv3", "op-mkdir-done", 0, 0, "struct svc_req *",
 366      -            "conninfo_t *" },
 367      -        { "nfsv3", "op-mkdir-done", 1, 1, "nfsv3oparg_t *",
 368      -            "nfsv3opinfo_t *" },
 369      -        { "nfsv3", "op-mkdir-done", 2, 3, "MKDIR3res *" },
 370      -        { "nfsv3", "op-mknod-start", 0, 0, "struct svc_req *",
 371      -            "conninfo_t *" },
 372      -        { "nfsv3", "op-mknod-start", 1, 1, "nfsv3oparg_t *",
 373      -            "nfsv3opinfo_t *" },
 374      -        { "nfsv3", "op-mknod-start", 2, 3, "MKNOD3args *" },
 375      -        { "nfsv3", "op-mknod-done", 0, 0, "struct svc_req *",
 376      -            "conninfo_t *" },
 377      -        { "nfsv3", "op-mknod-done", 1, 1, "nfsv3oparg_t *",
 378      -            "nfsv3opinfo_t *" },
 379      -        { "nfsv3", "op-mknod-done", 2, 3, "MKNOD3res *" },
 380      -        { "nfsv3", "op-null-start", 0, 0, "struct svc_req *",
 381      -            "conninfo_t *" },
 382      -        { "nfsv3", "op-null-start", 1, 1, "nfsv3oparg_t *",
 383      -            "nfsv3opinfo_t *" },
 384      -        { "nfsv3", "op-null-done", 0, 0, "struct svc_req *",
 385      -            "conninfo_t *" },
 386      -        { "nfsv3", "op-null-done", 1, 1, "nfsv3oparg_t *",
 387      -            "nfsv3opinfo_t *" },
 388      -        { "nfsv3", "op-pathconf-start", 0, 0, "struct svc_req *",
 389      -            "conninfo_t *" },
 390      -        { "nfsv3", "op-pathconf-start", 1, 1, "nfsv3oparg_t *",
 391      -            "nfsv3opinfo_t *" },
 392      -        { "nfsv3", "op-pathconf-start", 2, 3, "PATHCONF3args *" },
 393      -        { "nfsv3", "op-pathconf-done", 0, 0, "struct svc_req *",
 394      -            "conninfo_t *" },
 395      -        { "nfsv3", "op-pathconf-done", 1, 1, "nfsv3oparg_t *",
 396      -            "nfsv3opinfo_t *" },
 397      -        { "nfsv3", "op-pathconf-done", 2, 3, "PATHCONF3res *" },
 398      -        { "nfsv3", "op-read-start", 0, 0, "struct svc_req *",
 399      -            "conninfo_t *" },
 400      -        { "nfsv3", "op-read-start", 1, 1, "nfsv3oparg_t *",
 401      -            "nfsv3opinfo_t *" },
 402      -        { "nfsv3", "op-read-start", 2, 3, "READ3args *" },
 403      -        { "nfsv3", "op-read-done", 0, 0, "struct svc_req *",
 404      -            "conninfo_t *" },
 405      -        { "nfsv3", "op-read-done", 1, 1, "nfsv3oparg_t *",
 406      -            "nfsv3opinfo_t *" },
 407      -        { "nfsv3", "op-read-done", 2, 3, "READ3res *" },
 408      -        { "nfsv3", "op-readdir-start", 0, 0, "struct svc_req *",
 409      -            "conninfo_t *" },
 410      -        { "nfsv3", "op-readdir-start", 1, 1, "nfsv3oparg_t *",
 411      -            "nfsv3opinfo_t *" },
 412      -        { "nfsv3", "op-readdir-start", 2, 3, "READDIR3args *" },
 413      -        { "nfsv3", "op-readdir-done", 0, 0, "struct svc_req *",
 414      -            "conninfo_t *" },
 415      -        { "nfsv3", "op-readdir-done", 1, 1, "nfsv3oparg_t *",
 416      -            "nfsv3opinfo_t *" },
 417      -        { "nfsv3", "op-readdir-done", 2, 3, "READDIR3res *" },
 418      -        { "nfsv3", "op-readdirplus-start", 0, 0, "struct svc_req *",
 419      -            "conninfo_t *" },
 420      -        { "nfsv3", "op-readdirplus-start", 1, 1, "nfsv3oparg_t *",
 421      -            "nfsv3opinfo_t *" },
 422      -        { "nfsv3", "op-readdirplus-start", 2, 3, "READDIRPLUS3args *" },
 423      -        { "nfsv3", "op-readdirplus-done", 0, 0, "struct svc_req *",
 424      -            "conninfo_t *" },
 425      -        { "nfsv3", "op-readdirplus-done", 1, 1, "nfsv3oparg_t *",
 426      -            "nfsv3opinfo_t *" },
 427      -        { "nfsv3", "op-readdirplus-done", 2, 3, "READDIRPLUS3res *" },
 428      -        { "nfsv3", "op-readlink-start", 0, 0, "struct svc_req *",
 429      -            "conninfo_t *" },
 430      -        { "nfsv3", "op-readlink-start", 1, 1, "nfsv3oparg_t *",
 431      -            "nfsv3opinfo_t *" },
 432      -        { "nfsv3", "op-readlink-start", 2, 3, "READLINK3args *" },
 433      -        { "nfsv3", "op-readlink-done", 0, 0, "struct svc_req *",
 434      -            "conninfo_t *" },
 435      -        { "nfsv3", "op-readlink-done", 1, 1, "nfsv3oparg_t *",
 436      -            "nfsv3opinfo_t *" },
 437      -        { "nfsv3", "op-readlink-done", 2, 3, "READLINK3res *" },
 438      -        { "nfsv3", "op-remove-start", 0, 0, "struct svc_req *",
 439      -            "conninfo_t *" },
 440      -        { "nfsv3", "op-remove-start", 1, 1, "nfsv3oparg_t *",
 441      -            "nfsv3opinfo_t *" },
 442      -        { "nfsv3", "op-remove-start", 2, 3, "REMOVE3args *" },
 443      -        { "nfsv3", "op-remove-done", 0, 0, "struct svc_req *",
 444      -            "conninfo_t *" },
 445      -        { "nfsv3", "op-remove-done", 1, 1, "nfsv3oparg_t *",
 446      -            "nfsv3opinfo_t *" },
 447      -        { "nfsv3", "op-remove-done", 2, 3, "REMOVE3res *" },
 448      -        { "nfsv3", "op-rename-start", 0, 0, "struct svc_req *",
 449      -            "conninfo_t *" },
 450      -        { "nfsv3", "op-rename-start", 1, 1, "nfsv3oparg_t *",
 451      -            "nfsv3opinfo_t *" },
 452      -        { "nfsv3", "op-rename-start", 2, 3, "RENAME3args *" },
 453      -        { "nfsv3", "op-rename-done", 0, 0, "struct svc_req *",
 454      -            "conninfo_t *" },
 455      -        { "nfsv3", "op-rename-done", 1, 1, "nfsv3oparg_t *",
 456      -            "nfsv3opinfo_t *" },
 457      -        { "nfsv3", "op-rename-done", 2, 3, "RENAME3res *" },
 458      -        { "nfsv3", "op-rmdir-start", 0, 0, "struct svc_req *",
 459      -            "conninfo_t *" },
 460      -        { "nfsv3", "op-rmdir-start", 1, 1, "nfsv3oparg_t *",
 461      -            "nfsv3opinfo_t *" },
 462      -        { "nfsv3", "op-rmdir-start", 2, 3, "RMDIR3args *" },
 463      -        { "nfsv3", "op-rmdir-done", 0, 0, "struct svc_req *",
 464      -            "conninfo_t *" },
 465      -        { "nfsv3", "op-rmdir-done", 1, 1, "nfsv3oparg_t *",
 466      -            "nfsv3opinfo_t *" },
 467      -        { "nfsv3", "op-rmdir-done", 2, 3, "RMDIR3res *" },
 468      -        { "nfsv3", "op-setattr-start", 0, 0, "struct svc_req *",
 469      -            "conninfo_t *" },
 470      -        { "nfsv3", "op-setattr-start", 1, 1, "nfsv3oparg_t *",
 471      -            "nfsv3opinfo_t *" },
 472      -        { "nfsv3", "op-setattr-start", 2, 3, "SETATTR3args *" },
 473      -        { "nfsv3", "op-setattr-done", 0, 0, "struct svc_req *",
 474      -            "conninfo_t *" },
 475      -        { "nfsv3", "op-setattr-done", 1, 1, "nfsv3oparg_t *",
 476      -            "nfsv3opinfo_t *" },
 477      -        { "nfsv3", "op-setattr-done", 2, 3, "SETATTR3res *" },
 478      -        { "nfsv3", "op-symlink-start", 0, 0, "struct svc_req *",
 479      -            "conninfo_t *" },
 480      -        { "nfsv3", "op-symlink-start", 1, 1, "nfsv3oparg_t *",
 481      -            "nfsv3opinfo_t *" },
 482      -        { "nfsv3", "op-symlink-start", 2, 3, "SYMLINK3args *" },
 483      -        { "nfsv3", "op-symlink-done", 0, 0, "struct svc_req *",
 484      -            "conninfo_t *" },
 485      -        { "nfsv3", "op-symlink-done", 1, 1, "nfsv3oparg_t *",
 486      -            "nfsv3opinfo_t *" },
 487      -        { "nfsv3", "op-symlink-done", 2, 3, "SYMLINK3res *" },
 488      -        { "nfsv3", "op-write-start", 0, 0, "struct svc_req *",
 489      -            "conninfo_t *" },
 490      -        { "nfsv3", "op-write-start", 1, 1, "nfsv3oparg_t *",
 491      -            "nfsv3opinfo_t *" },
 492      -        { "nfsv3", "op-write-start", 2, 3, "WRITE3args *" },
 493      -        { "nfsv3", "op-write-done", 0, 0, "struct svc_req *",
 494      -            "conninfo_t *" },
 495      -        { "nfsv3", "op-write-done", 1, 1, "nfsv3oparg_t *",
 496      -            "nfsv3opinfo_t *" },
 497      -        { "nfsv3", "op-write-done", 2, 3, "WRITE3res *" },
      278 +        /* Tables like this get really ugly when line-wrapped. */
      279 +        /* BEGIN CSTYLED */
      280 +        { "nfsv3", "op-getattr-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      281 +        { "nfsv3", "op-getattr-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      282 +        { "nfsv3", "op-getattr-start", 2, 4, "GETATTR3args *" },
 498  283  
      284 +        { "nfsv3", "op-getattr-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      285 +        { "nfsv3", "op-getattr-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      286 +        { "nfsv3", "op-getattr-done", 2, 4, "GETATTR3res *" },
      287 +
      288 +        { "nfsv3", "op-setattr-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      289 +        { "nfsv3", "op-setattr-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      290 +        { "nfsv3", "op-setattr-start", 2, 4, "SETATTR3args *" },
      291 +
      292 +        { "nfsv3", "op-setattr-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      293 +        { "nfsv3", "op-setattr-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      294 +        { "nfsv3", "op-setattr-done", 2, 4, "SETATTR3res *" },
      295 +
      296 +        { "nfsv3", "op-lookup-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      297 +        { "nfsv3", "op-lookup-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      298 +        { "nfsv3", "op-lookup-start", 2, 4, "LOOKUP3args *" },
      299 +
      300 +        { "nfsv3", "op-lookup-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      301 +        { "nfsv3", "op-lookup-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      302 +        { "nfsv3", "op-lookup-done", 2, 4, "LOOKUP3res *" },
      303 +
      304 +        { "nfsv3", "op-access-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      305 +        { "nfsv3", "op-access-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      306 +        { "nfsv3", "op-access-start", 2, 4, "ACCESS3args *" },
      307 +
      308 +        { "nfsv3", "op-access-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      309 +        { "nfsv3", "op-access-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      310 +        { "nfsv3", "op-access-done", 2, 4, "ACCESS3res *" },
      311 +
      312 +        { "nfsv3", "op-commit-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      313 +        { "nfsv3", "op-commit-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      314 +        { "nfsv3", "op-commit-start", 2, 4, "COMMIT3args *" },
      315 +
      316 +        { "nfsv3", "op-commit-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      317 +        { "nfsv3", "op-commit-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      318 +        { "nfsv3", "op-commit-done", 2, 4, "COMMIT3res *" },
      319 +
      320 +        { "nfsv3", "op-create-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      321 +        { "nfsv3", "op-create-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      322 +        { "nfsv3", "op-create-start", 2, 4, "CREATE3args *" },
      323 +
      324 +        { "nfsv3", "op-create-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      325 +        { "nfsv3", "op-create-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      326 +        { "nfsv3", "op-create-done", 2, 4, "CREATE3res *" },
      327 +
      328 +        { "nfsv3", "op-fsinfo-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      329 +        { "nfsv3", "op-fsinfo-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      330 +        { "nfsv3", "op-fsinfo-start", 2, 4, "FSINFO3args *" },
      331 +
      332 +        { "nfsv3", "op-fsinfo-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      333 +        { "nfsv3", "op-fsinfo-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      334 +        { "nfsv3", "op-fsinfo-done", 2, 4, "FSINFO3res *" },
      335 +
      336 +        { "nfsv3", "op-fsstat-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      337 +        { "nfsv3", "op-fsstat-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      338 +        { "nfsv3", "op-fsstat-start", 2, 4, "FSSTAT3args *" },
      339 +
      340 +        { "nfsv3", "op-fsstat-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      341 +        { "nfsv3", "op-fsstat-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      342 +        { "nfsv3", "op-fsstat-done", 2, 4, "FSSTAT3res *" },
      343 +
      344 +        { "nfsv3", "op-link-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      345 +        { "nfsv3", "op-link-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      346 +        { "nfsv3", "op-link-start", 2, 4, "LINK3args *" },
      347 +
      348 +        { "nfsv3", "op-link-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      349 +        { "nfsv3", "op-link-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      350 +        { "nfsv3", "op-link-done", 2, 4, "LINK3res *" },
      351 +
      352 +        { "nfsv3", "op-mkdir-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      353 +        { "nfsv3", "op-mkdir-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      354 +        { "nfsv3", "op-mkdir-start", 2, 4, "MKDIR3args *" },
      355 +
      356 +        { "nfsv3", "op-mkdir-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      357 +        { "nfsv3", "op-mkdir-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      358 +        { "nfsv3", "op-mkdir-done", 2, 4, "MKDIR3res *" },
      359 +
      360 +        { "nfsv3", "op-mknod-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      361 +        { "nfsv3", "op-mknod-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      362 +        { "nfsv3", "op-mknod-start", 2, 4, "MKNOD3args *" },
      363 +
      364 +        { "nfsv3", "op-mknod-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      365 +        { "nfsv3", "op-mknod-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      366 +        { "nfsv3", "op-mknod-done", 2, 4, "MKNOD3res *" },
      367 +
      368 +        { "nfsv3", "op-null-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      369 +        { "nfsv3", "op-null-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      370 +
      371 +        { "nfsv3", "op-null-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      372 +        { "nfsv3", "op-null-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      373 +
      374 +        { "nfsv3", "op-pathconf-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      375 +        { "nfsv3", "op-pathconf-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      376 +        { "nfsv3", "op-pathconf-start", 2, 4, "PATHCONF3args *" },
      377 +
      378 +        { "nfsv3", "op-pathconf-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      379 +        { "nfsv3", "op-pathconf-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      380 +        { "nfsv3", "op-pathconf-done", 2, 4, "PATHCONF3res *" },
      381 +
      382 +        { "nfsv3", "op-read-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      383 +        { "nfsv3", "op-read-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      384 +        { "nfsv3", "op-read-start", 2, 4, "READ3args *" },
      385 +
      386 +        { "nfsv3", "op-read-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      387 +        { "nfsv3", "op-read-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      388 +        { "nfsv3", "op-read-done", 2, 4, "READ3res *" },
      389 +
      390 +        { "nfsv3", "op-readdir-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      391 +        { "nfsv3", "op-readdir-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      392 +        { "nfsv3", "op-readdir-start", 2, 4, "READDIR3args *" },
      393 +
      394 +        { "nfsv3", "op-readdir-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      395 +        { "nfsv3", "op-readdir-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      396 +        { "nfsv3", "op-readdir-done", 2, 4, "READDIR3res *" },
      397 +
      398 +        { "nfsv3", "op-readdirplus-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      399 +        { "nfsv3", "op-readdirplus-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      400 +        { "nfsv3", "op-readdirplus-start", 2, 4, "READDIRPLUS3args *" },
      401 +
      402 +        { "nfsv3", "op-readdirplus-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      403 +        { "nfsv3", "op-readdirplus-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      404 +        { "nfsv3", "op-readdirplus-done", 2, 4, "READDIRPLUS3res *" },
      405 +
      406 +        { "nfsv3", "op-readlink-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      407 +        { "nfsv3", "op-readlink-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      408 +        { "nfsv3", "op-readlink-start", 2, 4, "READLINK3args *" },
      409 +
      410 +        { "nfsv3", "op-readlink-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      411 +        { "nfsv3", "op-readlink-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      412 +        { "nfsv3", "op-readlink-done", 2, 4, "READLINK3res *" },
      413 +
      414 +        { "nfsv3", "op-remove-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      415 +        { "nfsv3", "op-remove-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      416 +        { "nfsv3", "op-remove-start", 2, 4, "REMOVE3args *" },
      417 +
      418 +        { "nfsv3", "op-remove-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      419 +        { "nfsv3", "op-remove-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      420 +        { "nfsv3", "op-remove-done", 2, 4, "REMOVE3res *" },
      421 +
      422 +        { "nfsv3", "op-rename-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      423 +        { "nfsv3", "op-rename-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      424 +        { "nfsv3", "op-rename-start", 2, 4, "RENAME3args *" },
      425 +
      426 +        { "nfsv3", "op-rename-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      427 +        { "nfsv3", "op-rename-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      428 +        { "nfsv3", "op-rename-done", 2, 4, "RENAME3res *" },
      429 +
      430 +        { "nfsv3", "op-rmdir-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      431 +        { "nfsv3", "op-rmdir-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      432 +        { "nfsv3", "op-rmdir-start", 2, 4, "RMDIR3args *" },
      433 +
      434 +        { "nfsv3", "op-rmdir-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      435 +        { "nfsv3", "op-rmdir-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      436 +        { "nfsv3", "op-rmdir-done", 2, 4, "RMDIR3res *" },
      437 +
      438 +        { "nfsv3", "op-symlink-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      439 +        { "nfsv3", "op-symlink-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      440 +        { "nfsv3", "op-symlink-start", 2, 4, "SYMLINK3args *" },
      441 +
      442 +        { "nfsv3", "op-symlink-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      443 +        { "nfsv3", "op-symlink-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      444 +        { "nfsv3", "op-symlink-done", 2, 4, "SYMLINK3res *" },
      445 +
      446 +        { "nfsv3", "op-write-start", 0, 0, "struct svc_req *", "conninfo_t *" },
      447 +        { "nfsv3", "op-write-start", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      448 +        { "nfsv3", "op-write-start", 2, 4, "WRITE3args *" },
      449 +
      450 +        { "nfsv3", "op-write-done", 0, 0, "struct svc_req *", "conninfo_t *" },
      451 +        { "nfsv3", "op-write-done", 1, 1, "nfsv3oparg_t *", "nfsv3opinfo_t *" },
      452 +        { "nfsv3", "op-write-done", 2, 4, "WRITE3res *" },
      453 +
 499  454          { "nfsv4", "null-start", 0, 0, "struct svc_req *", "conninfo_t *" },
 500  455          { "nfsv4", "null-done", 0, 0, "struct svc_req *", "conninfo_t *" },
 501      -        { "nfsv4", "compound-start", 0, 0, "struct compound_state *",
 502      -            "conninfo_t *" },
 503      -        { "nfsv4", "compound-start", 1, 0, "struct compound_state *",
 504      -            "nfsv4opinfo_t *" },
      456 +
      457 +        { "nfsv4", "compound-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      458 +        { "nfsv4", "compound-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 505  459          { "nfsv4", "compound-start", 2, 1, "COMPOUND4args *" },
 506      -        { "nfsv4", "compound-done", 0, 0, "struct compound_state *",
 507      -            "conninfo_t *" },
 508      -        { "nfsv4", "compound-done", 1, 0, "struct compound_state *",
 509      -            "nfsv4opinfo_t *" },
      460 +
      461 +        { "nfsv4", "compound-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      462 +        { "nfsv4", "compound-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 510  463          { "nfsv4", "compound-done", 2, 1, "COMPOUND4res *" },
 511      -        { "nfsv4", "op-access-start", 0, 0, "struct compound_state *",
 512      -            "conninfo_t *"},
 513      -        { "nfsv4", "op-access-start", 1, 0, "struct compound_state *",
 514      -            "nfsv4opinfo_t *" },
      464 +
      465 +        { "nfsv4", "op-access-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      466 +        { "nfsv4", "op-access-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 515  467          { "nfsv4", "op-access-start", 2, 1, "ACCESS4args *" },
 516      -        { "nfsv4", "op-access-done", 0, 0, "struct compound_state *",
 517      -            "conninfo_t *" },
 518      -        { "nfsv4", "op-access-done", 1, 0, "struct compound_state *",
 519      -            "nfsv4opinfo_t *" },
      468 +
      469 +        { "nfsv4", "op-access-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      470 +        { "nfsv4", "op-access-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 520  471          { "nfsv4", "op-access-done", 2, 1, "ACCESS4res *" },
 521      -        { "nfsv4", "op-close-start", 0, 0, "struct compound_state *",
 522      -            "conninfo_t *" },
 523      -        { "nfsv4", "op-close-start", 1, 0, "struct compound_state *",
 524      -            "nfsv4opinfo_t *" },
      472 +
      473 +        { "nfsv4", "op-close-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      474 +        { "nfsv4", "op-close-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 525  475          { "nfsv4", "op-close-start", 2, 1, "CLOSE4args *" },
 526      -        { "nfsv4", "op-close-done", 0, 0, "struct compound_state *",
 527      -            "conninfo_t *" },
 528      -        { "nfsv4", "op-close-done", 1, 0, "struct compound_state *",
 529      -            "nfsv4opinfo_t *" },
      476 +
      477 +        { "nfsv4", "op-close-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      478 +        { "nfsv4", "op-close-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 530  479          { "nfsv4", "op-close-done", 2, 1, "CLOSE4res *" },
 531      -        { "nfsv4", "op-commit-start", 0, 0, "struct compound_state *",
 532      -            "conninfo_t *" },
 533      -        { "nfsv4", "op-commit-start", 1, 0, "struct compound_state *",
 534      -            "nfsv4opinfo_t *" },
      480 +
      481 +        { "nfsv4", "op-commit-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      482 +        { "nfsv4", "op-commit-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 535  483          { "nfsv4", "op-commit-start", 2, 1, "COMMIT4args *" },
 536      -        { "nfsv4", "op-commit-done", 0, 0, "struct compound_state *",
 537      -            "conninfo_t *" },
 538      -        { "nfsv4", "op-commit-done", 1, 0, "struct compound_state *",
 539      -            "nfsv4opinfo_t *" },
      484 +
      485 +        { "nfsv4", "op-commit-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      486 +        { "nfsv4", "op-commit-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 540  487          { "nfsv4", "op-commit-done", 2, 1, "COMMIT4res *" },
 541      -        { "nfsv4", "op-create-start", 0, 0, "struct compound_state *",
 542      -            "conninfo_t *" },
 543      -        { "nfsv4", "op-create-start", 1, 0, "struct compound_state *",
 544      -            "nfsv4opinfo_t *" },
      488 +
      489 +        { "nfsv4", "op-create-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      490 +        { "nfsv4", "op-create-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 545  491          { "nfsv4", "op-create-start", 2, 1, "CREATE4args *" },
 546      -        { "nfsv4", "op-create-done", 0, 0, "struct compound_state *",
 547      -            "conninfo_t *" },
 548      -        { "nfsv4", "op-create-done", 1, 0, "struct compound_state *",
 549      -            "nfsv4opinfo_t *" },
      492 +
      493 +        { "nfsv4", "op-create-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      494 +        { "nfsv4", "op-create-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 550  495          { "nfsv4", "op-create-done", 2, 1, "CREATE4res *" },
 551      -        { "nfsv4", "op-delegpurge-start", 0, 0, "struct compound_state *",
 552      -            "conninfo_t *" },
 553      -        { "nfsv4", "op-delegpurge-start", 1, 0, "struct compound_state *",
 554      -            "nfsv4opinfo_t *" },
      496 +
      497 +        { "nfsv4", "op-delegpurge-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      498 +        { "nfsv4", "op-delegpurge-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 555  499          { "nfsv4", "op-delegpurge-start", 2, 1, "DELEGPURGE4args *" },
 556      -        { "nfsv4", "op-delegpurge-done", 0, 0, "struct compound_state *",
 557      -            "conninfo_t *" },
 558      -        { "nfsv4", "op-delegpurge-done", 1, 0, "struct compound_state *",
 559      -            "nfsv4opinfo_t *" },
      500 +
      501 +        { "nfsv4", "op-delegpurge-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      502 +        { "nfsv4", "op-delegpurge-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 560  503          { "nfsv4", "op-delegpurge-done", 2, 1, "DELEGPURGE4res *" },
 561      -        { "nfsv4", "op-delegreturn-start", 0, 0, "struct compound_state *",
 562      -            "conninfo_t *" },
 563      -        { "nfsv4", "op-delegreturn-start", 1, 0, "struct compound_state *",
 564      -            "nfsv4opinfo_t *" },
      504 +
      505 +        { "nfsv4", "op-delegreturn-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      506 +        { "nfsv4", "op-delegreturn-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 565  507          { "nfsv4", "op-delegreturn-start", 2, 1, "DELEGRETURN4args *" },
 566      -        { "nfsv4", "op-delegreturn-done", 0, 0, "struct compound_state *",
 567      -            "conninfo_t *" },
 568      -        { "nfsv4", "op-delegreturn-done", 1, 0, "struct compound_state *",
 569      -            "nfsv4opinfo_t *" },
      508 +
      509 +        { "nfsv4", "op-delegreturn-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      510 +        { "nfsv4", "op-delegreturn-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 570  511          { "nfsv4", "op-delegreturn-done", 2, 1, "DELEGRETURN4res *" },
 571      -        { "nfsv4", "op-getattr-start", 0, 0, "struct compound_state *",
 572      -            "conninfo_t *" },
 573      -        { "nfsv4", "op-getattr-start", 1, 0, "struct compound_state *",
 574      -            "nfsv4opinfo_t *" },
      512 +
      513 +        { "nfsv4", "op-getattr-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      514 +        { "nfsv4", "op-getattr-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 575  515          { "nfsv4", "op-getattr-start", 2, 1, "GETATTR4args *" },
 576      -        { "nfsv4", "op-getattr-done", 0, 0, "struct compound_state *",
 577      -            "conninfo_t *" },
 578      -        { "nfsv4", "op-getattr-done", 1, 0, "struct compound_state *",
 579      -            "nfsv4opinfo_t *" },
      516 +
      517 +        { "nfsv4", "op-getattr-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      518 +        { "nfsv4", "op-getattr-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 580  519          { "nfsv4", "op-getattr-done", 2, 1, "GETATTR4res *" },
 581      -        { "nfsv4", "op-getfh-start", 0, 0, "struct compound_state *",
 582      -            "conninfo_t *" },
 583      -        { "nfsv4", "op-getfh-start", 1, 0, "struct compound_state *",
 584      -            "nfsv4opinfo_t *" },
 585      -        { "nfsv4", "op-getfh-done", 0, 0, "struct compound_state *",
 586      -            "conninfo_t *" },
 587      -        { "nfsv4", "op-getfh-done", 1, 0, "struct compound_state *",
 588      -            "nfsv4opinfo_t *" },
      520 +
      521 +        { "nfsv4", "op-getfh-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      522 +        { "nfsv4", "op-getfh-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      523 +
      524 +        { "nfsv4", "op-getfh-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      525 +        { "nfsv4", "op-getfh-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 589  526          { "nfsv4", "op-getfh-done", 2, 1, "GETFH4res *" },
 590      -        { "nfsv4", "op-link-start", 0, 0, "struct compound_state *",
 591      -            "conninfo_t *" },
 592      -        { "nfsv4", "op-link-start", 1, 0, "struct compound_state *",
 593      -            "nfsv4opinfo_t *" },
      527 +
      528 +        { "nfsv4", "op-link-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      529 +        { "nfsv4", "op-link-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 594  530          { "nfsv4", "op-link-start", 2, 1, "LINK4args *" },
 595      -        { "nfsv4", "op-link-done", 0, 0, "struct compound_state *",
 596      -            "conninfo_t *" },
 597      -        { "nfsv4", "op-link-done", 1, 0, "struct compound_state *",
 598      -            "nfsv4opinfo_t *" },
      531 +
      532 +        { "nfsv4", "op-link-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      533 +        { "nfsv4", "op-link-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 599  534          { "nfsv4", "op-link-done", 2, 1, "LINK4res *" },
 600      -        { "nfsv4", "op-lock-start", 0, 0, "struct compound_state *",
 601      -            "conninfo_t *" },
 602      -        { "nfsv4", "op-lock-start", 1, 0, "struct compound_state *",
 603      -            "nfsv4opinfo_t *" },
      535 +
      536 +        { "nfsv4", "op-lock-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      537 +        { "nfsv4", "op-lock-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 604  538          { "nfsv4", "op-lock-start", 2, 1, "LOCK4args *" },
 605      -        { "nfsv4", "op-lock-done", 0, 0, "struct compound_state *",
 606      -            "conninfo_t *" },
 607      -        { "nfsv4", "op-lock-done", 1, 0, "struct compound_state *",
 608      -            "nfsv4opinfo_t *" },
      539 +
      540 +        { "nfsv4", "op-lock-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      541 +        { "nfsv4", "op-lock-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 609  542          { "nfsv4", "op-lock-done", 2, 1, "LOCK4res *" },
 610      -        { "nfsv4", "op-lockt-start", 0, 0, "struct compound_state *",
 611      -            "conninfo_t *" },
 612      -        { "nfsv4", "op-lockt-start", 1, 0, "struct compound_state *",
 613      -            "nfsv4opinfo_t *" },
      543 +
      544 +        { "nfsv4", "op-lockt-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      545 +        { "nfsv4", "op-lockt-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 614  546          { "nfsv4", "op-lockt-start", 2, 1, "LOCKT4args *" },
 615      -        { "nfsv4", "op-lockt-done", 0, 0, "struct compound_state *",
 616      -            "conninfo_t *" },
 617      -        { "nfsv4", "op-lockt-done", 1, 0, "struct compound_state *",
 618      -            "nfsv4opinfo_t *" },
      547 +
      548 +        { "nfsv4", "op-lockt-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      549 +        { "nfsv4", "op-lockt-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 619  550          { "nfsv4", "op-lockt-done", 2, 1, "LOCKT4res *" },
 620      -        { "nfsv4", "op-locku-start", 0, 0, "struct compound_state *",
 621      -            "conninfo_t *" },
 622      -        { "nfsv4", "op-locku-start", 1, 0, "struct compound_state *",
 623      -            "nfsv4opinfo_t *" },
      551 +
      552 +        { "nfsv4", "op-locku-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      553 +        { "nfsv4", "op-locku-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 624  554          { "nfsv4", "op-locku-start", 2, 1, "LOCKU4args *" },
 625      -        { "nfsv4", "op-locku-done", 0, 0, "struct compound_state *",
 626      -            "conninfo_t *" },
 627      -        { "nfsv4", "op-locku-done", 1, 0, "struct compound_state *",
 628      -            "nfsv4opinfo_t *" },
      555 +
      556 +        { "nfsv4", "op-locku-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      557 +        { "nfsv4", "op-locku-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 629  558          { "nfsv4", "op-locku-done", 2, 1, "LOCKU4res *" },
 630      -        { "nfsv4", "op-lookup-start", 0, 0, "struct compound_state *",
 631      -            "conninfo_t *" },
 632      -        { "nfsv4", "op-lookup-start", 1, 0, "struct compound_state *",
 633      -            "nfsv4opinfo_t *" },
      559 +
      560 +        { "nfsv4", "op-lookup-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      561 +        { "nfsv4", "op-lookup-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 634  562          { "nfsv4", "op-lookup-start", 2, 1, "LOOKUP4args *" },
 635      -        { "nfsv4", "op-lookup-done", 0, 0, "struct compound_state *",
 636      -            "conninfo_t *" },
 637      -        { "nfsv4", "op-lookup-done", 1, 0, "struct compound_state *",
 638      -            "nfsv4opinfo_t *" },
      563 +
      564 +        { "nfsv4", "op-lookup-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      565 +        { "nfsv4", "op-lookup-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 639  566          { "nfsv4", "op-lookup-done", 2, 1, "LOOKUP4res *" },
 640      -        { "nfsv4", "op-lookupp-start", 0, 0, "struct compound_state *",
 641      -            "conninfo_t *" },
 642      -        { "nfsv4", "op-lookupp-start", 1, 0, "struct compound_state *",
 643      -            "nfsv4opinfo_t *" },
 644      -        { "nfsv4", "op-lookupp-done", 0, 0, "struct compound_state *",
 645      -            "conninfo_t *" },
 646      -        { "nfsv4", "op-lookupp-done", 1, 0, "struct compound_state *",
 647      -            "nfsv4opinfo_t *" },
      567 +
      568 +        { "nfsv4", "op-lookupp-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      569 +        { "nfsv4", "op-lookupp-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      570 +
      571 +        { "nfsv4", "op-lookupp-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      572 +        { "nfsv4", "op-lookupp-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 648  573          { "nfsv4", "op-lookupp-done", 2, 1, "LOOKUPP4res *" },
 649      -        { "nfsv4", "op-nverify-start", 0, 0, "struct compound_state *",
 650      -            "conninfo_t *" },
 651      -        { "nfsv4", "op-nverify-start", 1, 0, "struct compound_state *",
 652      -            "nfsv4opinfo_t *" },
      574 +
      575 +        { "nfsv4", "op-nverify-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      576 +        { "nfsv4", "op-nverify-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 653  577          { "nfsv4", "op-nverify-start", 2, 1, "NVERIFY4args *" },
 654      -        { "nfsv4", "op-nverify-done", 0, 0, "struct compound_state *",
 655      -            "conninfo_t *" },
 656      -        { "nfsv4", "op-nverify-done", 1, 0, "struct compound_state *",
 657      -            "nfsv4opinfo_t *" },
      578 +
      579 +        { "nfsv4", "op-nverify-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      580 +        { "nfsv4", "op-nverify-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 658  581          { "nfsv4", "op-nverify-done", 2, 1, "NVERIFY4res *" },
 659      -        { "nfsv4", "op-open-start", 0, 0, "struct compound_state *",
 660      -            "conninfo_t *" },
 661      -        { "nfsv4", "op-open-start", 1, 0, "struct compound_state *",
 662      -            "nfsv4opinfo_t *" },
      582 +
      583 +        { "nfsv4", "op-open-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      584 +        { "nfsv4", "op-open-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 663  585          { "nfsv4", "op-open-start", 2, 1, "OPEN4args *" },
 664      -        { "nfsv4", "op-open-done", 0, 0, "struct compound_state *",
 665      -            "conninfo_t *" },
 666      -        { "nfsv4", "op-open-done", 1, 0, "struct compound_state *",
 667      -            "nfsv4opinfo_t *" },
      586 +
      587 +        { "nfsv4", "op-open-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      588 +        { "nfsv4", "op-open-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 668  589          { "nfsv4", "op-open-done", 2, 1, "OPEN4res *" },
 669      -        { "nfsv4", "op-open-confirm-start", 0, 0, "struct compound_state *",
 670      -            "conninfo_t *" },
 671      -        { "nfsv4", "op-open-confirm-start", 1, 0, "struct compound_state *",
 672      -            "nfsv4opinfo_t *" },
      590 +
      591 +        { "nfsv4", "op-open-confirm-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      592 +        { "nfsv4", "op-open-confirm-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 673  593          { "nfsv4", "op-open-confirm-start", 2, 1, "OPEN_CONFIRM4args *" },
 674      -        { "nfsv4", "op-open-confirm-done", 0, 0, "struct compound_state *",
 675      -            "conninfo_t *" },
 676      -        { "nfsv4", "op-open-confirm-done", 1, 0, "struct compound_state *",
 677      -            "nfsv4opinfo_t *" },
      594 +
      595 +        { "nfsv4", "op-open-confirm-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      596 +        { "nfsv4", "op-open-confirm-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 678  597          { "nfsv4", "op-open-confirm-done", 2, 1, "OPEN_CONFIRM4res *" },
 679      -        { "nfsv4", "op-open-downgrade-start", 0, 0, "struct compound_state *",
 680      -            "conninfo_t *" },
 681      -        { "nfsv4", "op-open-downgrade-start", 1, 0, "struct compound_state *",
 682      -            "nfsv4opinfo_t *" },
      598 +
      599 +        { "nfsv4", "op-open-downgrade-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      600 +        { "nfsv4", "op-open-downgrade-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 683  601          { "nfsv4", "op-open-downgrade-start", 2, 1, "OPEN_DOWNGRADE4args *" },
 684      -        { "nfsv4", "op-open-downgrade-done", 0, 0, "struct compound_state *",
 685      -            "conninfo_t *" },
 686      -        { "nfsv4", "op-open-downgrade-done", 1, 0, "struct compound_state *",
 687      -            "nfsv4opinfo_t *" },
      602 +
      603 +        { "nfsv4", "op-open-downgrade-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      604 +        { "nfsv4", "op-open-downgrade-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 688  605          { "nfsv4", "op-open-downgrade-done", 2, 1, "OPEN_DOWNGRADE4res *" },
 689      -        { "nfsv4", "op-openattr-start", 0, 0, "struct compound_state *",
 690      -            "conninfo_t *" },
 691      -        { "nfsv4", "op-openattr-start", 1, 0, "struct compound_state *",
 692      -            "nfsv4opinfo_t *" },
      606 +
      607 +        { "nfsv4", "op-openattr-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      608 +        { "nfsv4", "op-openattr-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 693  609          { "nfsv4", "op-openattr-start", 2, 1, "OPENATTR4args *" },
 694      -        { "nfsv4", "op-openattr-done", 0, 0, "struct compound_state *",
 695      -            "conninfo_t *" },
 696      -        { "nfsv4", "op-openattr-done", 1, 0, "struct compound_state *",
 697      -            "nfsv4opinfo_t *" },
      610 +
      611 +        { "nfsv4", "op-openattr-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      612 +        { "nfsv4", "op-openattr-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 698  613          { "nfsv4", "op-openattr-done", 2, 1, "OPENATTR4res *" },
 699      -        { "nfsv4", "op-putfh-start", 0, 0, "struct compound_state *",
 700      -            "conninfo_t *" },
 701      -        { "nfsv4", "op-putfh-start", 1, 0, "struct compound_state *",
 702      -            "nfsv4opinfo_t *" },
      614 +
      615 +        { "nfsv4", "op-putfh-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      616 +        { "nfsv4", "op-putfh-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 703  617          { "nfsv4", "op-putfh-start", 2, 1, "PUTFH4args *" },
 704      -        { "nfsv4", "op-putfh-done", 0, 0, "struct compound_state *",
 705      -            "conninfo_t *" },
 706      -        { "nfsv4", "op-putfh-done", 1, 0, "struct compound_state *",
 707      -            "nfsv4opinfo_t *" },
      618 +
      619 +        { "nfsv4", "op-putfh-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      620 +        { "nfsv4", "op-putfh-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 708  621          { "nfsv4", "op-putfh-done", 2, 1, "PUTFH4res *" },
 709      -        { "nfsv4", "op-putpubfh-start", 0, 0, "struct compound_state *",
 710      -            "conninfo_t *" },
 711      -        { "nfsv4", "op-putpubfh-start", 1, 0, "struct compound_state *",
 712      -            "nfsv4opinfo_t *" },
 713      -        { "nfsv4", "op-putpubfh-done", 0, 0, "struct compound_state *",
 714      -            "conninfo_t *" },
 715      -        { "nfsv4", "op-putpubfh-done", 1, 0, "struct compound_state *",
 716      -            "nfsv4opinfo_t *" },
      622 +
      623 +        { "nfsv4", "op-putpubfh-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      624 +        { "nfsv4", "op-putpubfh-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      625 +
      626 +        { "nfsv4", "op-putpubfh-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      627 +        { "nfsv4", "op-putpubfh-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 717  628          { "nfsv4", "op-putpubfh-done", 2, 1, "PUTPUBFH4res *" },
 718      -        { "nfsv4", "op-putrootfh-start", 0, 0, "struct compound_state *",
 719      -            "conninfo_t *" },
 720      -        { "nfsv4", "op-putrootfh-start", 1, 0, "struct compound_state *",
 721      -            "nfsv4opinfo_t *" },
 722      -        { "nfsv4", "op-putrootfh-done", 0, 0, "struct compound_state *",
 723      -            "conninfo_t *" },
 724      -        { "nfsv4", "op-putrootfh-done", 1, 0, "struct compound_state *",
 725      -            "nfsv4opinfo_t *" },
      629 +
      630 +        { "nfsv4", "op-putrootfh-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      631 +        { "nfsv4", "op-putrootfh-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      632 +
      633 +        { "nfsv4", "op-putrootfh-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      634 +        { "nfsv4", "op-putrootfh-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 726  635          { "nfsv4", "op-putrootfh-done", 2, 1, "PUTROOTFH4res *" },
 727      -        { "nfsv4", "op-read-start", 0, 0, "struct compound_state *",
 728      -            "conninfo_t *" },
 729      -        { "nfsv4", "op-read-start", 1, 0, "struct compound_state *",
 730      -            "nfsv4opinfo_t *" },
      636 +
      637 +        { "nfsv4", "op-read-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      638 +        { "nfsv4", "op-read-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 731  639          { "nfsv4", "op-read-start", 2, 1, "READ4args *" },
 732      -        { "nfsv4", "op-read-done", 0, 0, "struct compound_state *",
 733      -            "conninfo_t *" },
 734      -        { "nfsv4", "op-read-done", 1, 0, "struct compound_state *",
 735      -            "nfsv4opinfo_t *" },
      640 +
      641 +        { "nfsv4", "op-read-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      642 +        { "nfsv4", "op-read-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 736  643          { "nfsv4", "op-read-done", 2, 1, "READ4res *" },
 737      -        { "nfsv4", "op-readdir-start", 0, 0, "struct compound_state *",
 738      -            "conninfo_t *" },
 739      -        { "nfsv4", "op-readdir-start", 1, 0, "struct compound_state *",
 740      -            "nfsv4opinfo_t *" },
      644 +
      645 +        { "nfsv4", "op-readdir-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      646 +        { "nfsv4", "op-readdir-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 741  647          { "nfsv4", "op-readdir-start", 2, 1, "READDIR4args *" },
 742      -        { "nfsv4", "op-readdir-done", 0, 0, "struct compound_state *",
 743      -            "conninfo_t *" },
 744      -        { "nfsv4", "op-readdir-done", 1, 0, "struct compound_state *",
 745      -            "nfsv4opinfo_t *" },
      648 +
      649 +        { "nfsv4", "op-readdir-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      650 +        { "nfsv4", "op-readdir-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 746  651          { "nfsv4", "op-readdir-done", 2, 1, "READDIR4res *" },
 747      -        { "nfsv4", "op-readlink-start", 0, 0, "struct compound_state *",
 748      -            "conninfo_t *" },
 749      -        { "nfsv4", "op-readlink-start", 1, 0, "struct compound_state *",
 750      -            "nfsv4opinfo_t *" },
 751      -        { "nfsv4", "op-readlink-done", 0, 0, "struct compound_state *",
 752      -            "conninfo_t *" },
 753      -        { "nfsv4", "op-readlink-done", 1, 0, "struct compound_state *",
 754      -            "nfsv4opinfo_t *" },
      652 +
      653 +        { "nfsv4", "op-readlink-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      654 +        { "nfsv4", "op-readlink-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      655 +
      656 +        { "nfsv4", "op-readlink-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      657 +        { "nfsv4", "op-readlink-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 755  658          { "nfsv4", "op-readlink-done", 2, 1, "READLINK4res *" },
 756      -        { "nfsv4", "op-release-lockowner-start", 0, 0,
 757      -            "struct compound_state *", "conninfo_t *" },
 758      -        { "nfsv4", "op-release-lockowner-start", 1, 0,
 759      -            "struct compound_state *", "nfsv4opinfo_t *" },
 760      -        { "nfsv4", "op-release-lockowner-start", 2, 1,
 761      -            "RELEASE_LOCKOWNER4args *" },
 762      -        { "nfsv4", "op-release-lockowner-done", 0, 0,
 763      -            "struct compound_state *", "conninfo_t *" },
 764      -        { "nfsv4", "op-release-lockowner-done", 1, 0,
 765      -            "struct compound_state *", "nfsv4opinfo_t *" },
 766      -        { "nfsv4", "op-release-lockowner-done", 2, 1,
 767      -            "RELEASE_LOCKOWNER4res *" },
 768      -        { "nfsv4", "op-remove-start", 0, 0, "struct compound_state *",
 769      -            "conninfo_t *" },
 770      -        { "nfsv4", "op-remove-start", 1, 0, "struct compound_state *",
 771      -            "nfsv4opinfo_t *" },
      659 +
      660 +        { "nfsv4", "op-release-lockowner-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      661 +        { "nfsv4", "op-release-lockowner-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      662 +        { "nfsv4", "op-release-lockowner-start", 2, 1, "RELEASE_LOCKOWNER4args *" },
      663 +
      664 +        { "nfsv4", "op-release-lockowner-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      665 +        { "nfsv4", "op-release-lockowner-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      666 +        { "nfsv4", "op-release-lockowner-done", 2, 1, "RELEASE_LOCKOWNER4res *" },
      667 +
      668 +        { "nfsv4", "op-remove-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      669 +        { "nfsv4", "op-remove-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 772  670          { "nfsv4", "op-remove-start", 2, 1, "REMOVE4args *" },
 773      -        { "nfsv4", "op-remove-done", 0, 0, "struct compound_state *",
 774      -            "conninfo_t *" },
 775      -        { "nfsv4", "op-remove-done", 1, 0, "struct compound_state *",
 776      -            "nfsv4opinfo_t *" },
      671 +
      672 +        { "nfsv4", "op-remove-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      673 +        { "nfsv4", "op-remove-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 777  674          { "nfsv4", "op-remove-done", 2, 1, "REMOVE4res *" },
 778      -        { "nfsv4", "op-rename-start", 0, 0, "struct compound_state *",
 779      -            "conninfo_t *" },
 780      -        { "nfsv4", "op-rename-start", 1, 0, "struct compound_state *",
 781      -            "nfsv4opinfo_t *" },
      675 +
      676 +        { "nfsv4", "op-rename-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      677 +        { "nfsv4", "op-rename-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 782  678          { "nfsv4", "op-rename-start", 2, 1, "RENAME4args *" },
 783      -        { "nfsv4", "op-rename-done", 0, 0, "struct compound_state *",
 784      -            "conninfo_t *" },
 785      -        { "nfsv4", "op-rename-done", 1, 0, "struct compound_state *",
 786      -            "nfsv4opinfo_t *" },
      679 +
      680 +        { "nfsv4", "op-rename-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      681 +        { "nfsv4", "op-rename-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 787  682          { "nfsv4", "op-rename-done", 2, 1, "RENAME4res *" },
 788      -        { "nfsv4", "op-renew-start", 0, 0, "struct compound_state *",
 789      -            "conninfo_t *" },
 790      -        { "nfsv4", "op-renew-start", 1, 0, "struct compound_state *",
 791      -            "nfsv4opinfo_t *" },
      683 +
      684 +        { "nfsv4", "op-renew-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      685 +        { "nfsv4", "op-renew-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 792  686          { "nfsv4", "op-renew-start", 2, 1, "RENEW4args *" },
 793      -        { "nfsv4", "op-renew-done", 0, 0, "struct compound_state *",
 794      -            "conninfo_t *" },
 795      -        { "nfsv4", "op-renew-done", 1, 0, "struct compound_state *",
 796      -            "nfsv4opinfo_t *" },
      687 +
      688 +        { "nfsv4", "op-renew-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      689 +        { "nfsv4", "op-renew-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 797  690          { "nfsv4", "op-renew-done", 2, 1, "RENEW4res *" },
 798      -        { "nfsv4", "op-restorefh-start", 0, 0, "struct compound_state *",
 799      -            "conninfo_t *" },
 800      -        { "nfsv4", "op-restorefh-start", 1, 0, "struct compound_state *",
 801      -            "nfsv4opinfo_t *" },
 802      -        { "nfsv4", "op-restorefh-done", 0, 0, "struct compound_state *",
 803      -            "conninfo_t *" },
 804      -        { "nfsv4", "op-restorefh-done", 1, 0, "struct compound_state *",
 805      -            "nfsv4opinfo_t *" },
      691 +
      692 +        { "nfsv4", "op-restorefh-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      693 +        { "nfsv4", "op-restorefh-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      694 +
      695 +        { "nfsv4", "op-restorefh-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      696 +        { "nfsv4", "op-restorefh-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 806  697          { "nfsv4", "op-restorefh-done", 2, 1, "RESTOREFH4res *" },
 807      -        { "nfsv4", "op-savefh-start", 0, 0, "struct compound_state *",
 808      -            "conninfo_t *" },
 809      -        { "nfsv4", "op-savefh-start", 1, 0, "struct compound_state *",
 810      -            "nfsv4opinfo_t *" },
 811      -        { "nfsv4", "op-savefh-done", 0, 0, "struct compound_state *",
 812      -            "conninfo_t *" },
 813      -        { "nfsv4", "op-savefh-done", 1, 0, "struct compound_state *",
 814      -            "nfsv4opinfo_t *" },
      698 +
      699 +        { "nfsv4", "op-savefh-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      700 +        { "nfsv4", "op-savefh-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      701 +
      702 +        { "nfsv4", "op-savefh-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      703 +        { "nfsv4", "op-savefh-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 815  704          { "nfsv4", "op-savefh-done", 2, 1, "SAVEFH4res *" },
 816      -        { "nfsv4", "op-secinfo-start", 0, 0, "struct compound_state *",
 817      -            "conninfo_t *" },
 818      -        { "nfsv4", "op-secinfo-start", 1, 0, "struct compound_state *",
 819      -            "nfsv4opinfo_t *" },
      705 +
      706 +        { "nfsv4", "op-secinfo-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      707 +        { "nfsv4", "op-secinfo-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 820  708          { "nfsv4", "op-secinfo-start", 2, 1, "SECINFO4args *" },
 821      -        { "nfsv4", "op-secinfo-done", 0, 0, "struct compound_state *",
 822      -            "conninfo_t *" },
 823      -        { "nfsv4", "op-secinfo-done", 1, 0, "struct compound_state *",
 824      -            "nfsv4opinfo_t *" },
      709 +
      710 +        { "nfsv4", "op-secinfo-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      711 +        { "nfsv4", "op-secinfo-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 825  712          { "nfsv4", "op-secinfo-done", 2, 1, "SECINFO4res *" },
 826      -        { "nfsv4", "op-setattr-start", 0, 0, "struct compound_state *",
 827      -            "conninfo_t *" },
 828      -        { "nfsv4", "op-setattr-start", 1, 0, "struct compound_state *",
 829      -            "nfsv4opinfo_t *" },
      713 +
      714 +        { "nfsv4", "op-setattr-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      715 +        { "nfsv4", "op-setattr-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 830  716          { "nfsv4", "op-setattr-start", 2, 1, "SETATTR4args *" },
 831      -        { "nfsv4", "op-setattr-done", 0, 0, "struct compound_state *",
 832      -            "conninfo_t *" },
 833      -        { "nfsv4", "op-setattr-done", 1, 0, "struct compound_state *",
 834      -            "nfsv4opinfo_t *" },
      717 +
      718 +        { "nfsv4", "op-setattr-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      719 +        { "nfsv4", "op-setattr-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 835  720          { "nfsv4", "op-setattr-done", 2, 1, "SETATTR4res *" },
 836      -        { "nfsv4", "op-setclientid-start", 0, 0, "struct compound_state *",
 837      -            "conninfo_t *" },
 838      -        { "nfsv4", "op-setclientid-start", 1, 0, "struct compound_state *",
 839      -            "nfsv4opinfo_t *" },
      721 +
      722 +        { "nfsv4", "op-setclientid-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      723 +        { "nfsv4", "op-setclientid-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 840  724          { "nfsv4", "op-setclientid-start", 2, 1, "SETCLIENTID4args *" },
 841      -        { "nfsv4", "op-setclientid-done", 0, 0, "struct compound_state *",
 842      -            "conninfo_t *" },
 843      -        { "nfsv4", "op-setclientid-done", 1, 0, "struct compound_state *",
 844      -            "nfsv4opinfo_t *" },
      725 +
      726 +        { "nfsv4", "op-setclientid-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      727 +        { "nfsv4", "op-setclientid-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 845  728          { "nfsv4", "op-setclientid-done", 2, 1, "SETCLIENTID4res *" },
 846      -        { "nfsv4", "op-setclientid-confirm-start", 0, 0,
 847      -            "struct compound_state *", "conninfo_t *" },
 848      -        { "nfsv4", "op-setclientid-confirm-start", 1, 0,
 849      -            "struct compound_state *", "nfsv4opinfo_t *" },
 850      -        { "nfsv4", "op-setclientid-confirm-start", 2, 1,
 851      -            "SETCLIENTID_CONFIRM4args *" },
 852      -        { "nfsv4", "op-setclientid-confirm-done", 0, 0,
 853      -            "struct compound_state *", "conninfo_t *" },
 854      -        { "nfsv4", "op-setclientid-confirm-done", 1, 0,
 855      -            "struct compound_state *", "nfsv4opinfo_t *" },
 856      -        { "nfsv4", "op-setclientid-confirm-done", 2, 1,
 857      -            "SETCLIENTID_CONFIRM4res *" },
 858      -        { "nfsv4", "op-verify-start", 0, 0, "struct compound_state *",
 859      -            "conninfo_t *" },
 860      -        { "nfsv4", "op-verify-start", 1, 0, "struct compound_state *",
 861      -            "nfsv4opinfo_t *" },
      729 +
      730 +        { "nfsv4", "op-setclientid-confirm-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      731 +        { "nfsv4", "op-setclientid-confirm-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      732 +        { "nfsv4", "op-setclientid-confirm-start", 2, 1, "SETCLIENTID_CONFIRM4args *" },
      733 +
      734 +        { "nfsv4", "op-setclientid-confirm-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      735 +        { "nfsv4", "op-setclientid-confirm-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
      736 +        { "nfsv4", "op-setclientid-confirm-done", 2, 1, "SETCLIENTID_CONFIRM4res *" },
      737 +
      738 +        { "nfsv4", "op-verify-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      739 +        { "nfsv4", "op-verify-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 862  740          { "nfsv4", "op-verify-start", 2, 1, "VERIFY4args *" },
 863      -        { "nfsv4", "op-verify-done", 0, 0, "struct compound_state *",
 864      -            "conninfo_t *" },
 865      -        { "nfsv4", "op-verify-done", 1, 0, "struct compound_state *",
 866      -            "nfsv4opinfo_t *" },
      741 +
      742 +        { "nfsv4", "op-verify-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      743 +        { "nfsv4", "op-verify-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 867  744          { "nfsv4", "op-verify-done", 2, 1, "VERIFY4res *" },
 868      -        { "nfsv4", "op-write-start", 0, 0, "struct compound_state *",
 869      -            "conninfo_t *" },
 870      -        { "nfsv4", "op-write-start", 1, 0, "struct compound_state *",
 871      -            "nfsv4opinfo_t *" },
      745 +
      746 +        { "nfsv4", "op-write-start", 0, 0, "struct compound_state *", "conninfo_t *" },
      747 +        { "nfsv4", "op-write-start", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 872  748          { "nfsv4", "op-write-start", 2, 1, "WRITE4args *" },
 873      -        { "nfsv4", "op-write-done", 0, 0, "struct compound_state *",
 874      -            "conninfo_t *" },
 875      -        { "nfsv4", "op-write-done", 1, 0, "struct compound_state *",
 876      -            "nfsv4opinfo_t *" },
      749 +
      750 +        { "nfsv4", "op-write-done", 0, 0, "struct compound_state *", "conninfo_t *" },
      751 +        { "nfsv4", "op-write-done", 1, 0, "struct compound_state *", "nfsv4opinfo_t *" },
 877  752          { "nfsv4", "op-write-done", 2, 1, "WRITE4res *" },
 878      -        { "nfsv4", "cb-recall-start", 0, 0, "rfs4_client_t *",
 879      -            "conninfo_t *" },
 880      -        { "nfsv4", "cb-recall-start", 1, 1, "rfs4_deleg_state_t *",
 881      -            "nfsv4cbinfo_t *" },
      753 +
      754 +        { "nfsv4", "cb-recall-start", 0, 0, "rfs4_client_t *", "conninfo_t *" },
      755 +        { "nfsv4", "cb-recall-start", 1, 1, "rfs4_deleg_state_t *", "nfsv4cbinfo_t *" },
 882  756          { "nfsv4", "cb-recall-start", 2, 2, "CB_RECALL4args *" },
 883      -        { "nfsv4", "cb-recall-done", 0, 0, "rfs4_client_t *",
 884      -            "conninfo_t *" },
 885      -        { "nfsv4", "cb-recall-done", 1, 1, "rfs4_deleg_state_t *",
 886      -            "nfsv4cbinfo_t *" },
      757 +
      758 +        { "nfsv4", "cb-recall-done", 0, 0, "rfs4_client_t *", "conninfo_t *" },
      759 +        { "nfsv4", "cb-recall-done", 1, 1, "rfs4_deleg_state_t *", "nfsv4cbinfo_t *" },
 887  760          { "nfsv4", "cb-recall-done", 2, 2, "CB_RECALL4res *" },
 888  761  
 889      -        /* Tables like this get really ugly when line-wrapped. */
 890      -        /* BEGIN CSTYLED */
 891  762          { "smb", "op-Close-start", 0, 0, "smb_request_t *", "conninfo_t *" },
 892  763          { "smb", "op-Close-start", 1, 0, "smb_request_t *", "smbopinfo_t *" },
 893  764          { "smb", "op-Close-done", 0, 0, "smb_request_t *", "conninfo_t *" },
 894  765          { "smb", "op-Close-done", 1, 0, "smb_request_t *", "smbopinfo_t *" },
 895  766  
 896  767          { "smb", "op-CloseAndTreeDisconnect-start", 0, 0, "smb_request_t *", "conninfo_t *" },
 897  768          { "smb", "op-CloseAndTreeDisconnect-start", 1, 0, "smb_request_t *", "smbopinfo_t *" },
 898  769          { "smb", "op-CloseAndTreeDisconnect-done", 0, 0, "smb_request_t *", "conninfo_t *" },
 899  770          { "smb", "op-CloseAndTreeDisconnect-done", 1, 0, "smb_request_t *", "smbopinfo_t *" },
 900  771  
↓ open down ↓ 750 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX