This is an automated email from the git hooks/post-receive script.
unknown user pushed a change to branch master in repository linux.
from f8eb5bd9a818 mm: fix build on 32-bit targets without MAX_PHYSMEM_BITS new 1da91ea87aef introduce fd_file(), convert all accessors to it. new 88a2f6468d01 struct fd: representation change new de12c3391bce add struct fd constructors, get rid of __to_fd() new f8ffbc365f70 Merge tag 'pull-stable-struct_fd' of git://git.kernel.org/ [...] new a3ed1cc4136d bcachefs: Fix negative timespecs new 36f0af4f44a4 bcachefs: Fix sysfs rebalance duration waited formatting new 27663d7784b5 bcachefs: Replace div_u64 with div64_u64 where second para [...] new 88d2ae0e6eb8 inode: make __iget() a static inline new 112d21fd1a12 bcachefs: switch to rhashtable for vfs inodes hash new 54f7702466b3 bcachefs: Fix deadlock in __wait_on_freeing_inode() new f65946338173 lib/generic-radix-tree.c: genradix_ptr_inlined() new b3f9da79e778 lib/generic-radix-tree.c: add preallocation new 8e973a4f3c74 bcachefs: rcu_pending new d2ed0f206a9d bcachefs: rcu_pending now works in userspace new f2bfe7e83765 bcachefs: Rip out freelists from btree key cache new 5f1929f1f077 bcachefs: key cache can now allocate from pending new 5396e5af3c10 bcachefs: Fix format specifier in bch2_btree_key_cache_to_text() new 8573dd3474e8 bcachefs: Annotate struct bucket_array with __counted_by() new afefc986b7d0 bcachefs: data_allowed is now an opts.h option new 4aedeac5703e bcachefs: bch2_opt_set_sb() can now set (some) device options new 9092a38a3dfd bcachefs: Opt_durability can now be set via bch2_opt_set_sb() new 082330c36194 bcachefs: allocate inode by using alloc_inode_sb() new 094c6a9f5cd5 bcachefs: Mark bch_inode_info as SLAB_ACCOUNT new abbfc4db50e2 bcachefs: Add check for btree_path ref overflow new 32ed4a620c54 bcachefs: Btree path tracepoints new 804baca7458a bcachefs: kill bch2_btree_iter_peek_and_restart() new 7e7595723c65 bcachefs: bchfs_read(): call trans_begin() on every loop iter new 1a3158ece59c bcachefs: bch2_fiemap(): call trans_begin() on every loop iter new 0215b9180462 bcachefs: for_each_btree_key_in_subvolume_upto() new efdb77a25baf bcachefs: bch2_readdir() -> for_each_btree_key_in_subvolume_upto new 3da106cd1bde bcachefs: bch2_xattr_list() -> for_each_btree_key_in_subvo [...] new 9f9e7f50af0d bcachefs: bch2_seek_data() -> for_each_btree_key_in_subvol [...] new 330405057fae bcachefs: bch2_seek_hole() -> for_each_btree_key_in_subvol [...] new c95285d17ec6 bcachefs: range_has_data() -> for_each_btree_key_in_subvol [...] new 093dd55d192c bcachefs: bch2_folio_set() -> for_each_btree_key_in_subvol [...] new 668c95515580 bcachefs: quota_reserve_range() -> for_each_btree_key_in_s [...] new 23fcd5f40aef bcachefs: remove the unused macro definition new ba8c52e2b115 bcachefs: fix macro definition allocate_dropping_locks_errcode new 4d05a083b34f bcachefs: fix macro definition allocate_dropping_locks new 26c0900d859c bcachefs: remove the unused parameter in macro bkey_crc_next new cfd273f1ae8e bcachefs: Move rebalance_status out of sysfs/internal new c7652f253a6d bcachefs: promote_whole_extents is now a normal option new d89b35d83ee3 bcachefs: Fix a spelling error in docs new 11827dba08e8 bcachefs: trivial open_bucket_add_buckets() cleanup new 59a1a62a4227 bcachefs: bch2_sb_nr_devices() new 2a463e948a31 bcachefs: Remove unused parameter of bkey_mantissa new 89ae9a04b2ff bcachefs: Remove unused parameter of bkey_mantissa_bits_dropped new 6cca8319e017 bcachefs: Remove dead code in __build_ro_aux_tree new 288a6690eb51 bcachefs: Convert open-coded extra computation to helper new 5d01101284a3 bcachefs: Minimize the search range used to calculate the [...] new 3130303bd9b7 bcachefs: Remove the prev array stuff new 5935bf3341b8 bcachefs: Remove unused parameter new d3f30f16294c bcachefs: drop unused posix acl handlers new 42386fbaee1d bcachefs: Simplify bch2_xattr_emit() implementation new b36f679c9988 bcachefs: Drop memalloc_nofs_save() in bch2_btree_node_mem [...] new fdbc9c390ade bcachefs: bch2_time_stats_reset() new a8cdf0ff4664 bcachefs: Do not check folio_has_private() new f1625637b851 bcachefs: Assert that we don't lock nodes when !trans->locked new 94932a0842cc bcachefs: Refactor bch2_bset_fix_lookup_table new 848c3ff8826b bcachefs: Convert to use jiffies macros new a803fa551d53 bcachefs: darray: convert to alloc_hooks() new 2c6a7bff2a2e bcachefs: Switch gc bucket array to a genradix new 86e92eeeb237 bcachefs: Annotate struct bch_xattr with __counted_by() new c24adfa0dfc2 bcachefs: support idmap mounts new fa1ab1b46608 bcachefs: Annotate bch_replicas_entry_{v0,v1} with __counted_by() new 3340dee23509 bcachefs: Add pinned to btree cache not freed counters new b7d8092a1b3f bcachefs: do_encrypt() now handles allocation failures new af05633d4065 bcachefs: convert __bch2_encrypt_bio() to darray new da2d20c98d32 bcachefs: kill redundant is_vmalloc_addr() new 2e95497e8101 bcachefs: fix prototype to bch2_alloc_sectors_start_trans() new a977f3e16292 bcachefs: BCH_WRITE_ALLOC_NOWAIT no longer applies to open [...] new d90c8acd351c bcachefs: rebalance writes use BCH_WRITE_ONLY_SPECIFIED_DEVS new 4645855df01e bcachefs: Hook up RENAME_WHITEOUT in rename. new 895fbf1cf02f bcachefs: Use __GFP_ACCOUNT for reclaimable memory new ff7f756f2be5 bcachefs: Use mm_account_reclaimed_pages() when freeing bt [...] new 4f19a60c3226 bcachefs: Options for recovery_passes, recovery_passes_exclude new 8ed4ba366331 bcachefs: Move tabstop setup to bch2_dev_usage_to_text() new 6b812f1dcebf bcachefs: bch2_dev_remove_alloc() -> alloc_background.c new 17405279e82a bcachefs: bch2_sb_member_alloc() new b161ca80968b bcachefs: Fix compilation error for bch2_sb_member_alloc new bf611567b791 bcachefs: improve "no device to read from" message new 3621ecc10f83 bcachefs: bch2_opts_to_text() new b99a94fd7ae9 bcachefs: Progress indicator for extents_to_backpointers new 805ddc204287 bcachefs: bch2_dev_rcu_noerror() new e92e5056e4f7 bcachefs: Failed devices no longer require mounting in deg [...] new ad5dbe3ce533 bcachefs: Don't count "skipped access bit" as touched in b [...] new 691f2cba2291 bcachefs: btree cache counters should be size_t new 91ddd7151000 bcachefs: split up btree cache counters for live, freeable new 7a51608d0125 bcachefs: Rework btree node pinning new 54a12984a9a2 bcachefs: EIO errcode cleanup new 1b11c4d36548 bcachefs: stripe_to_mem() new fa85c473977c bcachefs: bch_stripe.disk_label new a4b7a0c0378a bcachefs: ec_stripe_head.nr_created new c9cabfb215d5 bcachefs: improve bch2_new_stripe_to_text() new cb771fe891f9 bcachefs: improve error message on too few devices for ec new 2aee59eb2122 bcachefs: improve error messages in bch2_ec_read_extent() new 934137b0c066 bcachefs: bch2_trigger_ptr() calculates sectors even when [...] new ad8d1f77fc42 bcachefs: bch2_dev_remove_stripes() new 83ccd9b31d53 bcachefs: bch_fs.rw_devs_change_count new 035d72f72c91 bcachefs: bch2_ec_stripe_head_get() now checks for change [...] new d5c5b337f8da bcachefs: Don't drop devices with stripe pointers new abb43dd677f3 bcachefs: Remove duplicated include in backpointers.c new 025c55a4c7f1 bcachefs: return err ptr instead of null in read sb clean new b3f391fddf3c Merge tag 'bcachefs-2024-09-21' of git://evilpiepirate.org [...] new d16a5f852025 quota: avoid missing put_quota_format when DQUOT_SUSPENDED [...] new a838e5dca63d quota: remove unneeded return value of register_quota_format new f439111b4891 quota: remove redundant return at end of void function new edb46ddbc55e quota: remove unnecessary error code translation in dquot_ [...] new 116249b12939 isofs: Annotate struct SL_component with __counted_by() new d0359e4ca0f2 Merge tag 'fs_for_v6.12-rc1' of git://git.kernel.org/pub/s [...] new 7ee85f5515e8 btrfs: fix race setting file private on concurrent lseek u [...] new b0b595e61d97 btrfs: tree-checker: fix the wrong output of data backref [...] new 7f1b63f981b8 btrfs: fix use-after-free on rbtree that tracks inodes for [...] new a1fb2fcbb606 Merge tag 'for-6.12-tag' of git://git.kernel.org/pub/scm/l [...] new 4117efd5c9ec gfs2: Minor gfs2_glock_cb cleanup new 6cb9df81a2c4 gfs2: fix double destroy_workqueue error new 901849e7070b gfs2: Add gfs2_aspace_writepages() new 8d391972ae2d gfs2: Remove __gfs2_writepage() new e5ac17199275 gfs2: Remove gfs2_jdata_writepage() new 6888c1e85f5d gfs2: Remove gfs2_aspace_writepage() new 721068dec4ec Merge tag 'gfs2-v6.10-fixes' of git://git.kernel.org/pub/s [...] new 8e6e2ffa6569 nfsd: add list_head nf_gc to struct nfsd_file new 81a95c2b1d60 nfsd: remove unneeded EEXIST error check in nfsd_do_file_acquire new 8a7926176378 nfsd: fix refcount leak when file is unhashed after being found new 700bb4ff912f nfsd: count nfsd_file allocations new 4b84551a35e3 nfsd: use system_unbound_wq for nfsd_file_gc_worker() new cef48236dfe5 NFS: trace: show TIMEDOUT instead of 0x6e new 8203ab8a9dbe nfsd: don't EXPORT_SYMBOL nfsd4_ssc_init_umount_work() new 4ed9ef326063 lockd: discard nlmsvc_timeout new f2b27e1d7252 SUNRPC: make various functions static, or not exported. new c9f10f811cf7 nfsd: move nfsd_pool_stats_open into nfsctl.c new 73598a0cfb21 nfsd: don't allocate the versions array. new 16ef80eedcd3 sunrpc: document locking rules for svc_exit_thread() new 60749cbe3d8a sunrpc: change sp_nrthreads from atomic_t to unsigned int. new 9dcbc4e07087 sunrpc: don't take ->sv_lock when updating ->sv_nrthreads. new 59f3b138160d sunrpc: merge svc_rqst_alloc() into svc_prepare_thread() new 3391fc92db8e sunrpc: allow svc threads to fail initialisation cleanly new 11673b2a917d nfsd: don't assume copy notify when preprocessing the stateid new c55aeef7766c nfsd: Don't pass all of rqst into rqst_exp_find() new 9fd45c16f3e3 nfsd: Pass 'cred' instead of 'rqstp' to some functions. new 4f67d24f723b nfsd: use nfsd_v4client() in nfsd_breaker_owns_lease() new c689bdd3bffa nfsd: further centralize protocol version checks. new ef7f6c4904d0 nfsd: move V4ROOT version check to nfsd_set_fh_dentry() new 1459ad57673b nfsd: Move error code mapping to per-version proc code. new 36ffa3d0de54 nfsd: be more systematic about selecting error codes for i [...] new 438f81e0e92a nfsd: move error choice for incorrect object types to vers [...] new c4de97f7c454 svcrdma: Handle device removal outside of the CM event handler new 32b34fa48564 nfsd: Add quotes to client info 'callback address' new 202f39039a11 NFSD: Fix NFSv4's PUTPUBFH operation new ecbf84940575 .mailmap: Add an entry for my work email address new 2039c5da5dc1 NFSD: remove redundant assignment operation new 340e61e44c1d nfsd: map the EBADMSG to nfserr_io to avoid warning new c2feb7ee3915 nfsd: use LIST_HEAD() to simplify code new eb059a413c06 nfsd: remove unused parameter of nfsd_file_mark_find_or_create new 76a3f3f164d4 nfsd: fix some spelling errors in comments new e8581a912447 nfsd: add more info to WARN_ON_ONCE on failed callbacks new c1c9f3ea7405 nfsd: track the main opcode for callbacks new ba017fd391e0 nfsd: add more nfsd_cb tracepoints new d078cbf5c38d nfsd: call cache_put if xdr_reserve_space returns NULL new 2869b3a00e20 NFSD: Annotate struct pnfs_block_deviceaddr with __counted_by() new aeddf8e6c566 sunrpc: xprtrdma: Use ERR_CAST() to return new 985eeae9c874 nfsd: use clear_and_wake_up_bit() new 15392c8cd134 nfsd: avoid races with wake_up_var() new 9ed666eba4e0 NFSD: Async COPY result needs to return a write verifier new aadc3bbea163 NFSD: Limit the number of concurrent async COPY operations new 11848e985ca0 NFSD: Display copy stateids with conventional print formatting new e1d2697c53c0 NFSD: Record the callback stateid in copy tracepoints new d3c430aa97e5 NFSD: Clean up extra whitespace in trace_nfsd_copy_done new 0505de9615fa NFSD: Wrap async copy operations with trace points new 22451a16b7ab nfsd: return -EINVAL when namelen is 0 new 5559c157b799 nfsd: enforce upper limit for namelen in __cld_pipe_inprog [...] new a078a7dc0eaa nfsd: untangle code in nfsd4_deleg_getattr_conflict() new bf92e5008b17 nfsd: fix initial getattr on write delegation new 45bb63ed20e0 nfsd: fix delegation_blocked() to block correctly for at l [...] new 4b132aacb076 tools: Add xdrgen new 663ad8b1df87 xdrgen: Fix return code checking in built-in XDR decoders new fed8a17c61ff xdrgen: typedefs should use the built-in string and opaque [...] new 509abfc7a0ba xdrgen: Prevent reordering of encoder and decoder functions new 18ba6034468e Merge tag 'nfsd-6.12' of git://git.kernel.org/pub/scm/linu [...]
The 179 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: .mailmap | 3 + Documentation/filesystems/bcachefs/CodingStyle.rst | 2 +- arch/alpha/kernel/osf_sys.c | 4 +- arch/arm/kernel/sys_oabi-compat.c | 10 +- arch/powerpc/kvm/book3s_64_vio.c | 4 +- arch/powerpc/kvm/powerpc.c | 12 +- arch/powerpc/platforms/cell/spu_syscalls.c | 8 +- arch/x86/kernel/cpu/sgx/main.c | 4 +- arch/x86/kvm/svm/sev.c | 16 +- drivers/gpu/drm/amd/amdgpu/amdgpu_sched.c | 8 +- drivers/gpu/drm/drm_syncobj.c | 6 +- drivers/infiniband/core/ucma.c | 6 +- drivers/infiniband/core/uverbs_cmd.c | 10 +- drivers/media/mc/mc-request.c | 6 +- drivers/media/rc/lirc_dev.c | 8 +- drivers/vfio/group.c | 6 +- drivers/vfio/virqfd.c | 6 +- drivers/virt/acrn/irqfd.c | 6 +- drivers/xen/privcmd.c | 10 +- fs/bcachefs/Kconfig | 7 + fs/bcachefs/Makefile | 1 + fs/bcachefs/acl.c | 2 +- fs/bcachefs/alloc_background.c | 45 +- fs/bcachefs/alloc_background.h | 3 +- fs/bcachefs/alloc_foreground.c | 59 +- fs/bcachefs/alloc_foreground.h | 5 +- fs/bcachefs/backpointers.c | 106 +++- fs/bcachefs/backpointers.h | 23 +- fs/bcachefs/bcachefs.h | 14 +- fs/bcachefs/bcachefs_format.h | 2 + fs/bcachefs/bset.c | 182 +++--- fs/bcachefs/bset.h | 4 +- fs/bcachefs/btree_cache.c | 273 ++++++--- fs/bcachefs/btree_cache.h | 3 + fs/bcachefs/btree_gc.c | 21 +- fs/bcachefs/btree_io.c | 8 +- fs/bcachefs/btree_io.h | 4 +- fs/bcachefs/btree_iter.c | 63 +- fs/bcachefs/btree_iter.h | 52 +- fs/bcachefs/btree_key_cache.c | 405 +++---------- fs/bcachefs/btree_key_cache_types.h | 18 +- fs/bcachefs/btree_locking.h | 13 +- fs/bcachefs/btree_trans_commit.c | 2 +- fs/bcachefs/btree_types.h | 60 +- fs/bcachefs/btree_update.c | 12 +- fs/bcachefs/btree_update_interior.c | 37 +- fs/bcachefs/btree_update_interior.h | 2 + fs/bcachefs/buckets.c | 35 +- fs/bcachefs/buckets.h | 15 +- fs/bcachefs/buckets_types.h | 8 - fs/bcachefs/checksum.c | 101 ++-- fs/bcachefs/clock.h | 9 - fs/bcachefs/darray.c | 4 +- fs/bcachefs/darray.h | 26 +- fs/bcachefs/data_update.c | 2 +- fs/bcachefs/dirent.c | 66 +-- fs/bcachefs/ec.c | 303 +++++++--- fs/bcachefs/ec.h | 11 +- fs/bcachefs/ec_format.h | 9 +- fs/bcachefs/ec_types.h | 1 + fs/bcachefs/errcode.h | 14 +- fs/bcachefs/extents.c | 33 +- fs/bcachefs/extents.h | 24 +- fs/bcachefs/fs-common.c | 5 +- fs/bcachefs/fs-io-buffered.c | 41 +- fs/bcachefs/fs-io-direct.c | 2 +- fs/bcachefs/fs-io-pagecache.c | 90 ++- fs/bcachefs/fs-io-pagecache.h | 4 +- fs/bcachefs/fs-io.c | 178 ++---- fs/bcachefs/fs-ioctl.c | 4 +- fs/bcachefs/fs.c | 427 +++++++++----- fs/bcachefs/fs.h | 18 +- fs/bcachefs/inode.c | 2 +- fs/bcachefs/io_read.c | 18 +- fs/bcachefs/io_write.c | 7 +- fs/bcachefs/journal_io.c | 6 +- fs/bcachefs/journal_reclaim.c | 7 +- fs/bcachefs/opts.c | 85 ++- fs/bcachefs/opts.h | 61 +- fs/bcachefs/rcu_pending.c | 650 +++++++++++++++++++++ fs/bcachefs/rcu_pending.h | 27 + fs/bcachefs/rebalance.c | 3 + fs/bcachefs/recovery.c | 22 +- fs/bcachefs/recovery_passes.c | 10 +- fs/bcachefs/replicas.c | 10 +- fs/bcachefs/replicas_format.h | 9 +- fs/bcachefs/sb-clean.c | 2 +- fs/bcachefs/sb-members.c | 57 ++ fs/bcachefs/sb-members.h | 22 +- fs/bcachefs/str_hash.h | 2 +- fs/bcachefs/subvolume.h | 45 ++ fs/bcachefs/subvolume_types.h | 3 +- fs/bcachefs/super-io.c | 12 +- fs/bcachefs/super.c | 85 +-- fs/bcachefs/sysfs.c | 55 +- fs/bcachefs/thread_with_file.c | 2 +- fs/bcachefs/time_stats.c | 14 + fs/bcachefs/time_stats.h | 3 +- fs/bcachefs/trace.h | 465 ++++++++++++++- fs/bcachefs/util.c | 16 +- fs/bcachefs/util.h | 2 +- fs/bcachefs/xattr.c | 81 +-- fs/bcachefs/xattr_format.h | 2 +- fs/btrfs/btrfs_inode.h | 1 + fs/btrfs/ctree.h | 2 + fs/btrfs/defrag.c | 2 + fs/btrfs/file.c | 34 +- fs/btrfs/ioctl.c | 4 +- fs/btrfs/tree-checker.c | 2 +- fs/eventfd.c | 4 +- fs/eventpoll.c | 30 +- fs/ext4/ioctl.c | 6 +- fs/f2fs/file.c | 6 +- fs/fcntl.c | 38 +- fs/fhandle.c | 4 +- fs/file.c | 26 +- fs/fsopen.c | 6 +- fs/fuse/dev.c | 6 +- fs/gfs2/aops.c | 30 - fs/gfs2/glock.c | 9 +- fs/gfs2/log.c | 12 +- fs/gfs2/meta_io.c | 24 +- fs/gfs2/ops_fstype.c | 3 +- fs/inode.c | 8 - fs/ioctl.c | 30 +- fs/isofs/rock.h | 2 +- fs/kernel_read_file.c | 4 +- fs/lockd/host.c | 2 +- fs/lockd/svc.c | 9 +- fs/locks.c | 14 +- fs/namei.c | 10 +- fs/namespace.c | 18 +- fs/nfs/callback.c | 2 + fs/nfsd/auth.c | 14 +- fs/nfsd/auth.h | 2 +- fs/nfsd/blocklayout.c | 6 +- fs/nfsd/blocklayoutxdr.h | 2 +- fs/nfsd/cache.h | 2 +- fs/nfsd/export.c | 37 +- fs/nfsd/export.h | 7 +- fs/nfsd/filecache.c | 36 +- fs/nfsd/filecache.h | 1 + fs/nfsd/netns.h | 7 +- fs/nfsd/nfs3proc.c | 44 ++ fs/nfsd/nfs4callback.c | 8 +- fs/nfsd/nfs4idmap.c | 13 +- fs/nfsd/nfs4layouts.c | 1 + fs/nfsd/nfs4proc.c | 69 ++- fs/nfsd/nfs4recover.c | 13 +- fs/nfsd/nfs4state.c | 219 +++---- fs/nfsd/nfs4xdr.c | 29 +- fs/nfsd/nfsctl.c | 19 +- fs/nfsd/nfsd.h | 44 +- fs/nfsd/nfsfh.c | 58 +- fs/nfsd/nfsfh.h | 2 + fs/nfsd/nfsproc.c | 49 +- fs/nfsd/nfssvc.c | 126 +--- fs/nfsd/state.h | 1 + fs/nfsd/trace.h | 124 +++- fs/nfsd/vfs.c | 45 +- fs/nfsd/vfs.h | 4 +- fs/nfsd/xdr4.h | 1 + fs/notify/fanotify/fanotify_user.c | 12 +- fs/notify/inotify/inotify_user.c | 12 +- fs/ocfs2/cluster/heartbeat.c | 6 +- fs/ocfs2/super.c | 6 +- fs/open.c | 24 +- fs/overlayfs/file.c | 68 +-- fs/quota/dquot.c | 14 +- fs/quota/quota.c | 8 +- fs/quota/quota_v1.c | 3 +- fs/quota/quota_v2.c | 9 +- fs/read_write.c | 118 ++-- fs/readdir.c | 20 +- fs/remap_range.c | 2 +- fs/select.c | 8 +- fs/signalfd.c | 6 +- fs/smb/client/ioctl.c | 8 +- fs/splice.c | 22 +- fs/stat.c | 8 +- fs/statfs.c | 4 +- fs/sync.c | 14 +- fs/timerfd.c | 8 +- fs/utimes.c | 4 +- fs/xattr.c | 36 +- fs/xfs/xfs_exchrange.c | 8 +- fs/xfs/xfs_handle.c | 6 +- fs/xfs/xfs_ioctl.c | 28 +- include/linux/cleanup.h | 2 +- include/linux/file.h | 53 +- include/linux/fs.h | 9 +- include/linux/generic-radix-tree.h | 105 +++- include/linux/lockd/lockd.h | 2 +- include/linux/nfs4.h | 17 +- include/linux/quota.h | 2 +- include/linux/sunrpc/svc.h | 44 +- include/linux/sunrpc/svc_rdma.h | 2 + include/linux/sunrpc/svcauth.h | 1 - include/linux/sunrpc/svcsock.h | 2 - include/linux/sunrpc/xdrgen/_builtins.h | 243 ++++++++ include/linux/sunrpc/xdrgen/_defs.h | 26 + include/trace/events/rpcrdma.h | 23 + include/trace/misc/nfs.h | 1 + io_uring/sqpoll.c | 10 +- ipc/mqueue.c | 50 +- kernel/bpf/bpf_inode_storage.c | 14 +- kernel/bpf/btf.c | 6 +- kernel/bpf/syscall.c | 42 +- kernel/bpf/token.c | 10 +- kernel/cgroup/cgroup.c | 4 +- kernel/events/core.c | 14 +- kernel/module/main.c | 2 +- kernel/nsproxy.c | 12 +- kernel/pid.c | 10 +- kernel/signal.c | 6 +- kernel/sys.c | 10 +- kernel/taskstats.c | 4 +- kernel/watch_queue.c | 4 +- lib/generic-radix-tree.c | 80 +-- mm/fadvise.c | 4 +- mm/filemap.c | 6 +- mm/memcontrol-v1.c | 12 +- mm/readahead.c | 10 +- mm/shmem.c | 7 +- net/core/net_namespace.c | 6 +- net/socket.c | 14 +- net/sunrpc/sunrpc.h | 4 + net/sunrpc/svc.c | 130 ++--- net/sunrpc/svc_xprt.c | 9 - net/sunrpc/svcauth.c | 1 - net/sunrpc/svcsock.c | 1 - net/sunrpc/xprtrdma/svc_rdma_transport.c | 18 +- security/integrity/ima/ima_main.c | 4 +- security/landlock/syscalls.c | 22 +- security/loadpin/loadpin.c | 4 +- sound/core/pcm_native.c | 6 +- tools/net/sunrpc/xdrgen/.gitignore | 2 + tools/net/sunrpc/xdrgen/README | 244 ++++++++ .../hid/tests => net/sunrpc/xdrgen}/__init__.py | 0 tools/net/sunrpc/xdrgen/generators/__init__.py | 113 ++++ tools/net/sunrpc/xdrgen/generators/constant.py | 20 + tools/net/sunrpc/xdrgen/generators/enum.py | 44 ++ .../net/sunrpc/xdrgen/generators/header_bottom.py | 33 ++ tools/net/sunrpc/xdrgen/generators/header_top.py | 45 ++ tools/net/sunrpc/xdrgen/generators/pointer.py | 272 +++++++++ tools/net/sunrpc/xdrgen/generators/program.py | 168 ++++++ tools/net/sunrpc/xdrgen/generators/source_top.py | 32 + tools/net/sunrpc/xdrgen/generators/struct.py | 272 +++++++++ tools/net/sunrpc/xdrgen/generators/typedef.py | 255 ++++++++ tools/net/sunrpc/xdrgen/generators/union.py | 243 ++++++++ tools/net/sunrpc/xdrgen/grammars/xdr.lark | 119 ++++ .../sunrpc/xdrgen/subcmds}/__init__.py | 0 tools/net/sunrpc/xdrgen/subcmds/declarations.py | 76 +++ tools/net/sunrpc/xdrgen/subcmds/definitions.py | 78 +++ tools/net/sunrpc/xdrgen/subcmds/lint.py | 33 ++ tools/net/sunrpc/xdrgen/subcmds/source.py | 118 ++++ .../xdrgen/templates/C/constants/definition.j2 | 3 + .../xdrgen/templates/C/enum/declaration/close.j2 | 4 + .../sunrpc/xdrgen/templates/C/enum/decoder/enum.j2 | 19 + .../xdrgen/templates/C/enum/definition/close.j2 | 2 + .../templates/C/enum/definition/enumerator.j2 | 2 + .../xdrgen/templates/C/enum/definition/open.j2 | 3 + .../sunrpc/xdrgen/templates/C/enum/encoder/enum.j2 | 14 + .../C/header_bottom/declaration/header.j2 | 3 + .../templates/C/header_bottom/definition/header.j2 | 3 + .../templates/C/header_top/declaration/header.j2 | 14 + .../templates/C/header_top/definition/header.j2 | 10 + .../templates/C/pointer/declaration/close.j2 | 4 + .../xdrgen/templates/C/pointer/decoder/basic.j2 | 6 + .../xdrgen/templates/C/pointer/decoder/close.j2 | 3 + .../C/pointer/decoder/fixed_length_array.j2 | 8 + .../C/pointer/decoder/fixed_length_opaque.j2 | 6 + .../xdrgen/templates/C/pointer/decoder/open.j2 | 22 + .../templates/C/pointer/decoder/optional_data.j2 | 6 + .../C/pointer/decoder/variable_length_array.j2 | 13 + .../C/pointer/decoder/variable_length_opaque.j2 | 6 + .../C/pointer/decoder/variable_length_string.j2 | 6 + .../xdrgen/templates/C/pointer/definition/basic.j2 | 5 + .../xdrgen/templates/C/pointer/definition/close.j2 | 2 + .../C/pointer/definition/fixed_length_array.j2 | 5 + .../C/pointer/definition/fixed_length_opaque.j2 | 5 + .../xdrgen/templates/C/pointer/definition/open.j2 | 6 + .../C/pointer/definition/optional_data.j2 | 5 + .../C/pointer/definition/variable_length_array.j2 | 8 + .../C/pointer/definition/variable_length_opaque.j2 | 5 + .../C/pointer/definition/variable_length_string.j2 | 5 + .../xdrgen/templates/C/pointer/encoder/basic.j2 | 10 + .../xdrgen/templates/C/pointer/encoder/close.j2 | 3 + .../C/pointer/encoder/fixed_length_array.j2 | 12 + .../C/pointer/encoder/fixed_length_opaque.j2 | 6 + .../xdrgen/templates/C/pointer/encoder/open.j2 | 20 + .../templates/C/pointer/encoder/optional_data.j2 | 6 + .../C/pointer/encoder/variable_length_array.j2 | 15 + .../C/pointer/encoder/variable_length_opaque.j2 | 8 + .../C/pointer/encoder/variable_length_string.j2 | 8 + .../templates/C/program/declaration/argument.j2 | 2 + .../templates/C/program/declaration/result.j2 | 2 + .../xdrgen/templates/C/program/decoder/argument.j2 | 21 + .../xdrgen/templates/C/program/decoder/result.j2 | 22 + .../xdrgen/templates/C/program/definition/close.j2 | 2 + .../xdrgen/templates/C/program/definition/open.j2 | 6 + .../templates/C/program/definition/procedure.j2 | 2 + .../xdrgen/templates/C/program/encoder/argument.j2 | 16 + .../xdrgen/templates/C/program/encoder/result.j2 | 21 + .../sunrpc/xdrgen/templates/C/source_top/client.j2 | 8 + .../sunrpc/xdrgen/templates/C/source_top/server.j2 | 8 + .../xdrgen/templates/C/struct/declaration/close.j2 | 4 + .../xdrgen/templates/C/struct/decoder/basic.j2 | 6 + .../xdrgen/templates/C/struct/decoder/close.j2 | 3 + .../C/struct/decoder/fixed_length_array.j2 | 8 + .../C/struct/decoder/fixed_length_opaque.j2 | 6 + .../xdrgen/templates/C/struct/decoder/open.j2 | 12 + .../templates/C/struct/decoder/optional_data.j2 | 6 + .../C/struct/decoder/variable_length_array.j2 | 13 + .../C/struct/decoder/variable_length_opaque.j2 | 6 + .../C/struct/decoder/variable_length_string.j2 | 6 + .../xdrgen/templates/C/struct/definition/basic.j2 | 5 + .../xdrgen/templates/C/struct/definition/close.j2 | 2 + .../C/struct/definition/fixed_length_array.j2 | 5 + .../C/struct/definition/fixed_length_opaque.j2 | 5 + .../xdrgen/templates/C/struct/definition/open.j2 | 6 + .../templates/C/struct/definition/optional_data.j2 | 5 + .../C/struct/definition/variable_length_array.j2 | 8 + .../C/struct/definition/variable_length_opaque.j2 | 5 + .../C/struct/definition/variable_length_string.j2 | 5 + .../xdrgen/templates/C/struct/encoder/basic.j2 | 10 + .../xdrgen/templates/C/struct/encoder/close.j2 | 3 + .../C/struct/encoder/fixed_length_array.j2 | 12 + .../C/struct/encoder/fixed_length_opaque.j2 | 6 + .../xdrgen/templates/C/struct/encoder/open.j2 | 12 + .../templates/C/struct/encoder/optional_data.j2 | 6 + .../C/struct/encoder/variable_length_array.j2 | 15 + .../C/struct/encoder/variable_length_opaque.j2 | 8 + .../C/struct/encoder/variable_length_string.j2 | 8 + .../templates/C/typedef/declaration/basic.j2 | 8 + .../C/typedef/declaration/fixed_length_array.j2 | 4 + .../C/typedef/declaration/fixed_length_opaque.j2 | 4 + .../C/typedef/declaration/variable_length_array.j2 | 4 + .../typedef/declaration/variable_length_opaque.j2 | 4 + .../typedef/declaration/variable_length_string.j2 | 4 + .../xdrgen/templates/C/typedef/decoder/basic.j2 | 17 + .../C/typedef/decoder/fixed_length_array.j2 | 25 + .../C/typedef/decoder/fixed_length_opaque.j2 | 17 + .../C/typedef/decoder/variable_length_array.j2 | 26 + .../C/typedef/decoder/variable_length_opaque.j2 | 17 + .../C/typedef/decoder/variable_length_string.j2 | 17 + .../xdrgen/templates/C/typedef/definition/basic.j2 | 6 + .../C/typedef/definition/fixed_length_array.j2 | 6 + .../C/typedef/definition/fixed_length_opaque.j2 | 6 + .../C/typedef/definition/variable_length_array.j2 | 9 + .../C/typedef/definition/variable_length_opaque.j2 | 6 + .../C/typedef/definition/variable_length_string.j2 | 6 + .../xdrgen/templates/C/typedef/encoder/basic.j2 | 21 + .../C/typedef/encoder/fixed_length_array.j2 | 25 + .../C/typedef/encoder/fixed_length_opaque.j2 | 17 + .../C/typedef/encoder/variable_length_array.j2 | 30 + .../C/typedef/encoder/variable_length_opaque.j2 | 17 + .../C/typedef/encoder/variable_length_string.j2 | 17 + .../xdrgen/templates/C/union/decoder/basic.j2 | 6 + .../xdrgen/templates/C/union/decoder/break.j2 | 2 + .../xdrgen/templates/C/union/decoder/case_spec.j2 | 2 + .../xdrgen/templates/C/union/decoder/close.j2 | 4 + .../templates/C/union/decoder/default_spec.j2 | 2 + .../xdrgen/templates/C/union/decoder/open.j2 | 12 + .../templates/C/union/decoder/optional_data.j2 | 6 + .../templates/C/union/decoder/switch_spec.j2 | 7 + .../C/union/decoder/variable_length_array.j2 | 13 + .../C/union/decoder/variable_length_opaque.j2 | 6 + .../C/union/decoder/variable_length_string.j2 | 6 + .../xdrgen/templates/C/union/decoder/void.j2 | 3 + .../templates/C/union/definition/case_spec.j2 | 2 + .../xdrgen/templates/C/union/definition/close.j2 | 8 + .../templates/C/union/definition/default_spec.j2 | 2 + .../xdrgen/templates/C/union/definition/open.j2 | 6 + .../templates/C/union/definition/switch_spec.j2 | 3 + .../xdrgen/templates/C/union/encoder/basic.j2 | 10 + .../xdrgen/templates/C/union/encoder/break.j2 | 2 + .../xdrgen/templates/C/union/encoder/case_spec.j2 | 2 + .../xdrgen/templates/C/union/encoder/close.j2 | 4 + .../templates/C/union/encoder/default_spec.j2 | 2 + .../xdrgen/templates/C/union/encoder/open.j2 | 12 + .../templates/C/union/encoder/switch_spec.j2 | 7 + .../xdrgen/templates/C/union/encoder/void.j2 | 3 + tools/net/sunrpc/xdrgen/tests/test.x | 36 ++ tools/net/sunrpc/xdrgen/xdr_ast.py | 510 ++++++++++++++++ tools/net/sunrpc/xdrgen/xdr_parse.py | 36 ++ tools/net/sunrpc/xdrgen/xdrgen | 132 +++++ virt/kvm/eventfd.c | 6 +- virt/kvm/vfio.c | 8 +- 389 files changed, 8747 insertions(+), 2827 deletions(-) create mode 100644 fs/bcachefs/rcu_pending.c create mode 100644 fs/bcachefs/rcu_pending.h create mode 100644 include/linux/sunrpc/xdrgen/_builtins.h create mode 100644 include/linux/sunrpc/xdrgen/_defs.h create mode 100644 tools/net/sunrpc/xdrgen/.gitignore create mode 100644 tools/net/sunrpc/xdrgen/README copy tools/{testing/selftests/hid/tests => net/sunrpc/xdrgen}/__init__.py (100%) create mode 100644 tools/net/sunrpc/xdrgen/generators/__init__.py create mode 100644 tools/net/sunrpc/xdrgen/generators/constant.py create mode 100644 tools/net/sunrpc/xdrgen/generators/enum.py create mode 100644 tools/net/sunrpc/xdrgen/generators/header_bottom.py create mode 100644 tools/net/sunrpc/xdrgen/generators/header_top.py create mode 100644 tools/net/sunrpc/xdrgen/generators/pointer.py create mode 100644 tools/net/sunrpc/xdrgen/generators/program.py create mode 100644 tools/net/sunrpc/xdrgen/generators/source_top.py create mode 100644 tools/net/sunrpc/xdrgen/generators/struct.py create mode 100644 tools/net/sunrpc/xdrgen/generators/typedef.py create mode 100644 tools/net/sunrpc/xdrgen/generators/union.py create mode 100644 tools/net/sunrpc/xdrgen/grammars/xdr.lark copy tools/{testing/selftests/hid/tests => net/sunrpc/xdrgen/subcmds}/__init__.py (100%) create mode 100644 tools/net/sunrpc/xdrgen/subcmds/declarations.py create mode 100644 tools/net/sunrpc/xdrgen/subcmds/definitions.py create mode 100644 tools/net/sunrpc/xdrgen/subcmds/lint.py create mode 100644 tools/net/sunrpc/xdrgen/subcmds/source.py create mode 100644 tools/net/sunrpc/xdrgen/templates/C/constants/definition.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/enum/declaration/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/enum/decoder/enum.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/enum/definition/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/enum/definition/enumerator.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/enum/definition/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/enum/encoder/enum.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/header_bottom/declaration/h [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/header_bottom/definition/header.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/header_top/declaration/header.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/header_top/definition/header.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/declaration/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/decoder/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/decoder/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/decoder/fixed_lengt [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/decoder/fixed_lengt [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/decoder/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/decoder/optional_data.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/decoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/decoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/decoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/definition/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/definition/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/definition/fixed_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/definition/fixed_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/definition/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/definition/optional [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/definition/variable [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/definition/variable [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/definition/variable [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/encoder/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/encoder/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/encoder/fixed_lengt [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/encoder/fixed_lengt [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/encoder/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/encoder/optional_data.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/encoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/encoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/pointer/encoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/program/declaration/argument.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/program/declaration/result.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/program/decoder/argument.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/program/decoder/result.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/program/definition/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/program/definition/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/program/definition/procedure.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/program/encoder/argument.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/program/encoder/result.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/source_top/client.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/source_top/server.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/declaration/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/decoder/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/decoder/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/decoder/fixed_length [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/decoder/fixed_length [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/decoder/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/decoder/optional_data.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/decoder/variable_len [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/decoder/variable_len [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/decoder/variable_len [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/definition/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/definition/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/definition/fixed_len [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/definition/fixed_len [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/definition/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/definition/optional_data.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/definition/variable_ [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/definition/variable_ [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/definition/variable_ [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/encoder/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/encoder/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/encoder/fixed_length [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/encoder/fixed_length [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/encoder/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/encoder/optional_data.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/encoder/variable_len [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/encoder/variable_len [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/struct/encoder/variable_len [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/declaration/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/declaration/fixed_l [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/declaration/fixed_l [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/declaration/variabl [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/declaration/variabl [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/declaration/variabl [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/decoder/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/decoder/fixed_lengt [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/decoder/fixed_lengt [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/decoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/decoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/decoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/definition/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/definition/fixed_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/definition/fixed_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/definition/variable [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/definition/variable [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/definition/variable [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/encoder/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/encoder/fixed_lengt [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/encoder/fixed_lengt [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/encoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/encoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/typedef/encoder/variable_le [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/break.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/case_spec.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/default_spec.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/optional_data.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/switch_spec.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/variable_leng [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/variable_leng [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/variable_leng [...] create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/decoder/void.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/definition/case_spec.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/definition/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/definition/default_spec.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/definition/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/definition/switch_spec.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/encoder/basic.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/encoder/break.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/encoder/case_spec.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/encoder/close.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/encoder/default_spec.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/encoder/open.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/encoder/switch_spec.j2 create mode 100644 tools/net/sunrpc/xdrgen/templates/C/union/encoder/void.j2 create mode 100644 tools/net/sunrpc/xdrgen/tests/test.x create mode 100644 tools/net/sunrpc/xdrgen/xdr_ast.py create mode 100644 tools/net/sunrpc/xdrgen/xdr_parse.py create mode 100755 tools/net/sunrpc/xdrgen/xdrgen