Bug #14255
closedgcc10 removes symbols from genunix, impeding CTF uniquification
100%
Description
As of gcc10, the default setting for the eliminate-unused-debug-symbols
option is on
.
This means that, when using gcc10 as the primary compiler, symbols are stripped from the genunix
object, leaving less there for the subsequent CTF uniquification step. As a result, symbols which are used by several modules end up being duplicated in each module instead of held once within genunix.
Related issues
Updated by Andy Fiddaman almost 2 years ago
- Subject changed from gcc10 removes unused symbols from genunix, impeding CTF uniquification. to gcc10 removes symbols from genunix, impeding CTF uniquification
Updated by Andy Fiddaman almost 2 years ago
See also https://gist.github.com/citrus-it/ebd654b35037e0b5411c5f5555b9d61f for some analysis of the CTF created from gcc10's DWARF output.
Updated by Andy Fiddaman almost 2 years ago
This change also affects a gcc7 build and results in more types being uniquified to genunix. As an example, looking at the struct ether_vlan_header
type, these are the CTF differences from this change:
kernel/amd64/genunix
+struct ether_vlan_header { /* 0x12 bytes */
platform/i86xpv/kernel/misc/amd64/xnb
-struct ether_vlan_header { /* 0x12 bytes */
platform/i86xpv/kernel/drv/amd64/xnf
-struct ether_vlan_header { /* 0x12 bytes */
platform/i86hvm/kernel/drv/amd64/xnf
-struct ether_vlan_header { /* 0x12 bytes */
usr/kernel/socketmod/amd64/sockpfp
-struct ether_vlan_header { /* 0x12 bytes */
usr/kernel/drv/amd64/viona
-struct ether_vlan_header { /* 0x12 bytes */
usr/kernel/drv/amd64/ipf
-struct ether_vlan_header { /* 0x12 bytes */
kernel/socketmod/amd64/trill
-struct ether_vlan_header { /* 0x12 bytes */
kernel/misc/amd64/mac
-struct ether_vlan_header { /* 0x12 bytes */
kernel/misc/amd64/gld
-struct ether_vlan_header { /* 0x12 bytes */
kernel/misc/amd64/dls
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/vmxnet3s
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/t4nex
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/sfxge
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/rge
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/qlge
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/qede
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/oce
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/ntxn
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/nxge
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/hxge
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/eoib
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/e1000g
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/dld
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/bridge
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/bnxe
-struct ether_vlan_header { /* 0x12 bytes */
kernel/drv/amd64/bge
-struct ether_vlan_header { /* 0x12 bytes */
Here is the full list of types that have moved, with the count in the first column
67 -struct xc_msg { /* 0x10 bytes */
67 -struct xc_data { /* 0x20 bytes */
67 -struct softint { /* 0x4 bytes */
31 -struct scsi_extended_sense { /* 0x14 bytes */
30 -struct scsi_pkt { /* 0xa0 bytes */
30 -struct scsi_hba_tran { /* 0x1d0 bytes */
30 -struct scsi_device { /* 0x60 bytes */
30 -struct scsi_address { /* 0x10 bytes */
26 -struct ether_vlan_header { /* 0x12 bytes */
23 -struct scsi_status { /* 0x1 bytes */
23 -struct scsi_arq_status { /* 0x20 bytes */
23 -struct crypto_version { /* 0x2 bytes */
23 -struct crypto_provider_ext_info { /* 0xc0 bytes */
18 -struct modlcrypto { /* 0x10 bytes */
18 -struct autovec { /* 0x50 bytes */
16 -struct scsi_g5 { /* 0xa bytes */
16 -struct scsi_g4 { /* 0xe bytes */
16 -struct scsi_g1 { /* 0x8 bytes */
16 -struct scsi_g0 { /* 0x4 bytes */
16 -struct dtrace_probedesc { /* 0x144 bytes */
16 -struct dtrace_pattr { /* 0xf bytes */
16 -struct dtrace_attribute { /* 0x3 bytes */
16 -struct dtrace_argdesc { /* 0x10c bytes */
15 -struct dtrace_pops { /* 0x50 bytes */
14 -struct av_head { /* 0x10 bytes */
12 -struct tiuser { /* 0x28 bytes */
12 -struct t_info { /* 0x1c bytes */
11 -struct rpc_err { /* 0xc bytes */
11 -struct clnt_ops { /* 0x38 bytes */
11 -struct auth_ops { /* 0x38 bytes */
11 -struct __client { /* 0x20 bytes */
11 -struct __auth { /* 0x48 bytes */
9 -struct smbios_info { /* 0x38 bytes */
8 -struct uscsi_cmd { /* 0x40 bytes */
8 -struct tcphdr { /* 0x14 bytes */
8 -struct smbios_system { /* 0x20 bytes */
8 -struct modlcpu { /* 0x18 bytes */
8 -struct mac_stat_info_s { /* 0x20 bytes */
8 -struct dk_callback { /* 0x18 bytes */
7 -struct tg_attribute { /* 0xc bytes */
7 -struct mode_page { /* 0x2 bytes */
7 -struct mactype_register_s { /* 0x50 bytes */
7 -struct mactype_ops_s { /* 0x50 bytes */
7 -struct mac_ndd_mapping_s { /* 0x30 bytes */
7 -struct mac_info_s { /* 0x20 bytes */
7 -struct dld_ioc_info { /* 0x20 bytes */
7 -struct cmlb_tg_ops { /* 0x18 bytes */
6 -struct regspec64 { /* 0x18 bytes */
6 -struct netbuf32 { /* 0xc bytes */
6 -struct kstat_intr { /* 0x14 bytes */
6 -struct ddi_dmae_req { /* 0x28 bytes */
6 -struct cmlb_geom { /* 0x20 bytes */
5 -struct vtoc { /* 0x308 bytes */
5 -struct svcfh { /* 0x20 bytes */
5 -struct smbios_version { /* 0x2 bytes */
5 -struct smbios_30_entry { /* 0x18 bytes */
5 -struct smbios_21_entry { /* 0x1f bytes */
5 -struct partition { /* 0x18 bytes */
5 -struct nfs_fh3_i { /* 0x40 bytes */
5 -struct nfs_fh3 { /* 0x48 bytes */
5 -struct ndi_ra_request { /* 0x30 bytes */
5 -struct mode_header { /* 0x4 bytes */
5 -struct mode_geometry { /* 0x18 bytes */
5 -struct mode_format { /* 0x18 bytes */
5 -struct dk_minfo_ext { /* 0x18 bytes */
5 -struct dk_geom { /* 0x2a bytes */
5 -struct cpuid_regs { /* 0x10 bytes */
5 -struct caps_sc { /* 0x8 bytes */
4 -struct vtoc32 { /* 0x1c8 bytes */
4 -struct t_kunitdata { /* 0x38 bytes */
4 -struct svcpool_args { /* 0x1c bytes */
4 -struct ss_pn { /* 0x408 bytes */
4 -struct smp_pkt { /* 0x30 bytes */
4 -struct smp_hba_tran { /* 0x20 bytes */
4 -struct smp_device { /* 0x28 bytes */
4 -struct smp_address { /* 0x10 bytes */
4 -struct smbios_struct { /* 0x18 bytes */
4 -struct smbios_memdevice { /* 0x88 bytes */
4 -struct smbios_bios { /* 0x50 bytes */
4 -struct scsi_watch_result { /* 0x28 bytes */
4 -struct scsi_descr_sense_hdr { /* 0x8 bytes */
4 -struct scsi_capacity { /* 0x8 bytes */
4 -struct rfs4_servinst { /* 0x48 bytes */
4 -struct rfs4_oldstate { /* 0x38 bytes */
4 -struct rfs4_dss_path { /* 0x28 bytes */
4 -struct pci_acc_cfblk { /* 0x4 bytes */
4 -struct partition32 { /* 0xc bytes */
4 -struct nfs_globals { /* 0xe0 bytes */
4 -struct nfs_client_id4 { /* 0x20 bytes */
4 -struct nfs_args_extB { /* 0x10 bytes */
4 -struct nfs_args_extA { /* 0x8 bytes */
4 -struct nfs_args { /* 0x78 bytes */
4 -struct nfs4_srv { /* 0x158 bytes */
4 -struct nfs3_pathconf_info { /* 0x18 bytes */
4 -struct mac_propval_uint32_range_s { /* 0x8 bytes */
4 -struct mac_propval_str_range_s { /* 0x4 bytes */
4 -struct mac_propval_range_s { /* 0x10 bytes */
4 -struct knetbuf { /* 0x18 bytes */
4 -struct ipc_slot { /* 0x40 bytes */
4 -struct ipc_service { /* 0x98 bytes */
4 -struct ipc_perm64 { /* 0x20 bytes */
4 -struct ipc_perm32 { /* 0x2c bytes */
4 -struct ipc_perm { /* 0x1c bytes */
4 -struct dmu_objset_stats { /* 0x120 bytes */
4 -struct dk_devid { /* 0x200 bytes */
3 -struct wcc_data { /* 0x80 bytes */
3 -struct wcc_attr { /* 0x18 bytes */
3 -struct vis_devinit { /* 0x38 bytes */
3 -struct vis_consclear { /* 0x4 bytes */
3 -struct uscsi_cmd32 { /* 0x24 bytes */
3 -struct t_call { /* 0x38 bytes */
3 -struct t_bind { /* 0x18 bytes */
3 -struct symlinkdata3 { /* 0x48 bytes */
3 -struct symlink_cache { /* 0x10 bytes */
3 -struct spin_mutex { /* 0x8 bytes */
3 -struct specdata3 { /* 0x8 bytes */
3 -struct smbios_ipmi { /* 0x20 bytes */
3 -struct set_uid3 { /* 0x8 bytes */
3 -struct set_size3 { /* 0x10 bytes */
3 -struct set_mtime { /* 0xc bytes */
3 -struct set_mode3 { /* 0x8 bytes */
3 -struct set_irq_handler { /* 0x38 bytes */
3 -struct set_gid3 { /* 0x8 bytes */
3 -struct set_atime { /* 0xc bytes */
3 -struct secinfo4 { /* 0x20 bytes */
3 -struct scsi_key_strings { /* 0x10 bytes */
3 -struct scsi_information_sense_descr { /* 0xc bytes */
3 -struct sattrguard3 { /* 0xc bytes */
3 -struct sattr3 { /* 0x40 bytes */
3 -struct rpcsec_gss_info { /* 0x18 bytes */
3 -struct rnode { /* 0x2a0 bytes */
3 -struct rhashq { /* 0x18 bytes */
3 -struct rdma_xprt_record { /* 0x18 bytes */
3 -struct rdma_recv_data { /* 0x40 bytes */
3 -struct ra_return { /* 0xc bytes */
3 -struct psm_ops { /* 0xd0 bytes */
3 -struct psm_ops { /* 0x130 bytes */
3 -struct pre_op_attr { /* 0x20 bytes */
3 -struct post_op_fh3 { /* 0x4c bytes */
3 -struct post_op_attr { /* 0x60 bytes */
3 -struct pcmcia_if { /* 0x90 bytes */
3 -struct pcmcia_adapter_nexus_private { /* 0x30 bytes */
3 -struct pcm_regs { /* 0xc bytes */
3 -struct otw_nfswriteargs { /* 0x2c bytes */
3 -struct open_write_delegation4 { /* 0x48 bytes */
3 -struct open_to_lock_owner4 { /* 0x30 bytes */
3 -struct open_read_delegation4 { /* 0x38 bytes */
3 -struct open_owner4 { /* 0x18 bytes */
3 -struct open_delegation4 { /* 0x50 bytes */
3 -struct open_claim_delegate_cur4 { /* 0x20 bytes */
3 -struct nfswriteargs { /* 0x58 bytes */
3 -struct nfstime3 { /* 0x8 bytes */
3 -struct nfsstatfsok { /* 0x14 bytes */
3 -struct nfsstatfs { /* 0x18 bytes */
3 -struct nfssrok { /* 0x10 bytes */
3 -struct nfsslargs { /* 0x70 bytes */
3 -struct nfssattr { /* 0x20 bytes */
3 -struct nfssaargs { /* 0x40 bytes */
3 -struct nfsrrok { /* 0x70 bytes */
3 -struct nfsrnmargs { /* 0x70 bytes */
3 -struct nfsreadargs { /* 0x48 bytes */
3 -struct nfsrdresult { /* 0x78 bytes */
3 -struct nfsrdok { /* 0x18 bytes */
3 -struct nfsrdlnres { /* 0x18 bytes */
3 -struct nfsrddirres { /* 0x20 bytes */
3 -struct nfsrddirargs { /* 0x28 bytes */
3 -struct nfslinkargs { /* 0x60 bytes */
3 -struct nfsfattr { /* 0x44 bytes */
3 -struct nfsdrok { /* 0x64 bytes */
3 -struct nfsdiropres { /* 0x68 bytes */
3 -struct nfsdiropargs { /* 0x38 bytes */
3 -struct nfscreatargs { /* 0x60 bytes */
3 -struct nfsattrstat { /* 0x48 bytes */
3 -struct nfs_space_limit4 { /* 0x10 bytes */
3 -struct nfs_rwlock { /* 0x20 bytes */
3 -struct nfs_resop4 { /* 0x128 bytes */
3 -struct nfs_modified_limit4 { /* 0x8 bytes */
3 -struct nfs_fh4_fmt { /* 0x44 bytes */
3 -struct nfs_cb_resop4 { /* 0x28 bytes */
3 -struct nfs_cb_argop4 { /* 0x30 bytes */
3 -struct nfs_args_extB32 { /* 0x8 bytes */
3 -struct nfs_args_extA32 { /* 0x4 bytes */
3 -struct nfs_args32 { /* 0x4c bytes */
3 -struct nfs_argop4 { /* 0x78 bytes */
3 -struct nfs4_pathconf_info { /* 0x10 bytes */
3 -struct nfs4_ga_res { /* 0xf8 bytes */
3 -struct nfs4_ga_ext_res { /* 0x190 bytes */
3 -struct nfs2_timeval { /* 0x8 bytes */
3 -struct mode_control_scsi3 { /* 0xc bytes */
3 -struct mknoddata3 { /* 0x50 bytes */
3 -struct mac_tx_intr_cpus_s { /* 0x800 bytes */
3 -struct mac_resource_props_s { /* 0x3c3c bytes */
3 -struct mac_cpus_props_s { /* 0x1418 bytes */
3 -struct locker4 { /* 0x38 bytes */
3 -struct lock_owner4 { /* 0x18 bytes */
3 -struct lock_manager_pid_list { /* 0x20 bytes */
3 -struct knetconfig32 { /* 0x30 bytes */
3 -struct gss_clnt_data { /* 0xd8 bytes */
3 -struct gss_buffer_desc_struct { /* 0x10 bytes */
3 -struct fifonode { /* 0x90 bytes */
3 -struct fifolock { /* 0x20 bytes */
3 -struct fattr4 { /* 0x18 bytes */
3 -struct fattr3 { /* 0x58 bytes */
3 -struct exist_lock_owner4 { /* 0x14 bytes */
3 -struct entryplus3_info { /* 0xb0 bytes */
3 -struct entryplus3 { /* 0xd0 bytes */
3 -struct entry3 { /* 0x20 bytes */
3 -struct dtrace_mops { /* 0x18 bytes */
3 -struct dtrace_helper_provdesc { /* 0x18 bytes */
3 -struct dtrace_helper_probedesc { /* 0x58 bytes */
3 -struct dmu_buf { /* 0x20 bytes */
3 -struct diropargs3 { /* 0x60 bytes */
3 -struct dirlistplus3 { /* 0x10 bytes */
3 -struct dirlist3 { /* 0x10 bytes */
3 -struct dirent { /* 0x18 bytes */
3 -struct direct { /* 0x108 bytes */
3 -struct devicedata3 { /* 0x48 bytes */
3 -struct des_clnt_data { /* 0x28 bytes */
3 -struct dcopy_query_channel_s { /* 0x28 bytes */
3 -struct ctf_funcinfo { /* 0x10 bytes */
3 -struct createhow3 { /* 0x48 bytes */
3 -struct copen_claim_delegate_cur4 { /* 0x18 bytes */
3 -struct commit { /* 0x18 bytes */
3 -struct clientaddr4 { /* 0x10 bytes */
3 -struct clear_irq_handler { /* 0x10 bytes */
3 -struct change_info4 { /* 0x18 bytes */
3 -struct cb_client4 { /* 0x18 bytes */
3 -struct boottime { /* 0x10 bytes */
3 -struct bootstat { /* 0x80 bytes */
3 -struct arc_buf { /* 0x28 bytes */
3 -struct adaptive_mutex { /* 0x8 bytes */
3 -struct acache_hash { /* 0x18 bytes */
3 -struct acache { /* 0x38 bytes */
3 -struct WRITE4res { /* 0x18 bytes */
3 -struct WRITE4args { /* 0x40 bytes */
3 -struct WRITE3resok { /* 0x90 bytes */
3 -struct WRITE3resfail { /* 0x80 bytes */
3 -struct WRITE3res { /* 0x98 bytes */
3 -struct WRITE3args { /* 0x80 bytes */
3 -struct VERIFY4res { /* 0x4 bytes */
3 -struct VERIFY4args { /* 0x18 bytes */
3 -struct SYMLINK3resok { /* 0x130 bytes */
3 -struct SYMLINK3resfail { /* 0x80 bytes */
3 -struct SYMLINK3res { /* 0x138 bytes */
3 -struct SYMLINK3args { /* 0xa8 bytes */
3 -struct SETCLIENTID_CONFIRM4res { /* 0x4 bytes */
3 -struct SETCLIENTID_CONFIRM4args { /* 0x10 bytes */
3 -struct SETCLIENTID4resok { /* 0x10 bytes */
3 -struct SETCLIENTID4res { /* 0x18 bytes */
3 -struct SETCLIENTID4args { /* 0x40 bytes */
3 -struct SETATTR4res { /* 0x10 bytes */
3 -struct SETATTR4args { /* 0x28 bytes */
3 -struct SETATTR3resok { /* 0x80 bytes */
3 -struct SETATTR3resfail { /* 0x80 bytes */
3 -struct SETATTR3res { /* 0x88 bytes */
3 -struct SETATTR3args { /* 0x98 bytes */
3 -struct SECINFO4res { /* 0x10 bytes */
3 -struct SECINFO4cargs { /* 0x8 bytes */
3 -struct SECINFO4args { /* 0x10 bytes */
3 -struct SAVEFH4res { /* 0x4 bytes */
3 -struct RMDIR3resok { /* 0x80 bytes */
3 -struct RMDIR3resfail { /* 0x80 bytes */
3 -struct RMDIR3res { /* 0x88 bytes */
3 -struct RMDIR3args { /* 0x60 bytes */
3 -struct RESTOREFH4res { /* 0x4 bytes */
3 -struct RENEW4res { /* 0x4 bytes */
3 -struct RENEW4args { /* 0x8 bytes */
3 -struct RENAME4res { /* 0x38 bytes */
3 -struct RENAME4cargs { /* 0x10 bytes */
3 -struct RENAME4args { /* 0x20 bytes */
3 -struct RENAME3resok { /* 0x100 bytes */
3 -struct RENAME3resfail { /* 0x100 bytes */
3 -struct RENAME3res { /* 0x108 bytes */
3 -struct RENAME3args { /* 0xc0 bytes */
3 -struct REMOVE4res { /* 0x20 bytes */
3 -struct REMOVE4cargs { /* 0x8 bytes */
3 -struct REMOVE4args { /* 0x10 bytes */
3 -struct REMOVE3resok { /* 0x80 bytes */
3 -struct REMOVE3resfail { /* 0x80 bytes */
3 -struct REMOVE3res { /* 0x88 bytes */
3 -struct REMOVE3args { /* 0x60 bytes */
3 -struct RELEASE_LOCKOWNER4res { /* 0x4 bytes */
3 -struct RELEASE_LOCKOWNER4args { /* 0x18 bytes */
3 -struct READLINK4res { /* 0x18 bytes */
3 -struct READLINK3resok { /* 0x68 bytes */
3 -struct READLINK3resfail { /* 0x60 bytes */
3 -struct READLINK3res { /* 0x70 bytes */
3 -struct READLINK3args { /* 0x48 bytes */
3 -struct READDIRPLUS3resok { /* 0x90 bytes */
3 -struct READDIRPLUS3resfail { /* 0x60 bytes */
3 -struct READDIRPLUS3res { /* 0x98 bytes */
3 -struct READDIRPLUS3args { /* 0x60 bytes */
3 -struct READDIR4res_clnt { /* 0x30 bytes */
3 -struct READDIR4res { /* 0x20 bytes */
3 -struct READDIR4args { /* 0x48 bytes */
3 -struct READDIR3resok { /* 0x90 bytes */
3 -struct READDIR3resfail { /* 0x60 bytes */
3 -struct READDIR3res { /* 0x98 bytes */
3 -struct READDIR3args { /* 0x60 bytes */
3 -struct READ4res { /* 0x30 bytes */
3 -struct READ4args { /* 0x50 bytes */
3 -struct READ3resok { /* 0xa0 bytes */
3 -struct READ3resfail { /* 0x60 bytes */
3 -struct READ3res { /* 0xa8 bytes */
3 -struct READ3args { /* 0x78 bytes */
3 -struct PUTROOTFH4res { /* 0x4 bytes */
3 -struct PUTPUBFH4res { /* 0x4 bytes */
3 -struct PUTFH4res { /* 0x4 bytes */
3 -struct PUTFH4cargs { /* 0x8 bytes */
3 -struct PUTFH4args { /* 0x10 bytes */
3 -struct PATHCONF3resok { /* 0x78 bytes */
3 -struct PATHCONF3resfail { /* 0x60 bytes */
3 -struct PATHCONF3res { /* 0x80 bytes */
3 -struct PATHCONF3args { /* 0x48 bytes */
3 -struct OPEN_DOWNGRADE4res { /* 0x14 bytes */
3 -struct OPEN_DOWNGRADE4args { /* 0x1c bytes */
3 -struct OPEN_CONFIRM4res { /* 0x14 bytes */
3 -struct OPEN_CONFIRM4args { /* 0x14 bytes */
3 -struct OPENATTR4res { /* 0x4 bytes */
3 -struct OPENATTR4args { /* 0x4 bytes */
3 -struct OPEN4res { /* 0x90 bytes */
3 -struct OPEN4cargs { /* 0x68 bytes */
3 -struct OPEN4args { /* 0x70 bytes */
3 -struct NVERIFY4res { /* 0x4 bytes */
3 -struct NVERIFY4args { /* 0x18 bytes */
3 -struct MKNOD3resok { /* 0x130 bytes */
3 -struct MKNOD3resfail { /* 0x80 bytes */
3 -struct MKNOD3res { /* 0x138 bytes */
3 -struct MKNOD3args { /* 0xb0 bytes */
3 -struct MKDIR3resok { /* 0x130 bytes */
3 -struct MKDIR3resfail { /* 0x80 bytes */
3 -struct MKDIR3res { /* 0x138 bytes */
3 -struct MKDIR3args { /* 0xa0 bytes */
3 -struct LOOKUPP4res { /* 0x4 bytes */
3 -struct LOOKUP4res { /* 0x4 bytes */
3 -struct LOOKUP4cargs { /* 0x8 bytes */
3 -struct LOOKUP4args { /* 0x10 bytes */
3 -struct LOOKUP3resok { /* 0x108 bytes */
3 -struct LOOKUP3resfail { /* 0x60 bytes */
3 -struct LOOKUP3res { /* 0x110 bytes */
3 -struct LOOKUP3args { /* 0x60 bytes */
3 -struct LOCKU4res { /* 0x14 bytes */
3 -struct LOCKU4args { /* 0x28 bytes */
3 -struct LOCKT4res { /* 0x38 bytes */
3 -struct LOCKT4args { /* 0x30 bytes */
3 -struct LOCK4res { /* 0x38 bytes */
3 -struct LOCK4denied { /* 0x30 bytes */
3 -struct LOCK4args { /* 0x50 bytes */
3 -struct LINK4res { /* 0x20 bytes */
3 -struct LINK4cargs { /* 0x8 bytes */
3 -struct LINK4args { /* 0x10 bytes */
3 -struct LINK3resok { /* 0xe0 bytes */
3 -struct LINK3resfail { /* 0xe0 bytes */
3 -struct LINK3res { /* 0xe8 bytes */
3 -struct LINK3args { /* 0xa8 bytes */
3 -struct ILLEGAL4res { /* 0x4 bytes */
3 -struct GETFH4res { /* 0x18 bytes */
3 -struct GETATTR4res { /* 0x120 bytes */
3 -struct GETATTR4args { /* 0x10 bytes */
3 -struct GETATTR3resok { /* 0x58 bytes */
3 -struct GETATTR3res { /* 0x60 bytes */
3 -struct GETATTR3args { /* 0x48 bytes */
3 -struct FSSTAT3resok { /* 0x98 bytes */
3 -struct FSSTAT3resfail { /* 0x60 bytes */
3 -struct FSSTAT3res { /* 0xa0 bytes */
3 -struct FSSTAT3args { /* 0x48 bytes */
3 -struct FSINFO3resok { /* 0x98 bytes */
3 -struct FSINFO3resfail { /* 0x60 bytes */
3 -struct FSINFO3res { /* 0xa0 bytes */
3 -struct FSINFO3args { /* 0x48 bytes */
3 -struct DELEGRETURN4res { /* 0x4 bytes */
3 -struct DELEGRETURN4args { /* 0x10 bytes */
3 -struct DELEGPURGE4res { /* 0x4 bytes */
3 -struct DELEGPURGE4args { /* 0x8 bytes */
3 -struct CREATE4res { /* 0x28 bytes */
3 -struct CREATE4cargs { /* 0x30 bytes */
3 -struct CREATE4args { /* 0x40 bytes */
3 -struct CREATE3resok { /* 0x130 bytes */
3 -struct CREATE3resfail { /* 0x80 bytes */
3 -struct CREATE3res { /* 0x138 bytes */
3 -struct CREATE3args { /* 0xa8 bytes */
3 -struct COMPOUND4res { /* 0x28 bytes */
3 -struct COMPOUND4args { /* 0x20 bytes */
3 -struct COMMIT4res { /* 0x10 bytes */
3 -struct COMMIT4args { /* 0x10 bytes */
3 -struct COMMIT3resok { /* 0x88 bytes */
3 -struct COMMIT3resfail { /* 0x80 bytes */
3 -struct COMMIT3res { /* 0x90 bytes */
3 -struct COMMIT3args { /* 0x58 bytes */
3 -struct CLOSE4res { /* 0x14 bytes */
3 -struct CLOSE4args { /* 0x14 bytes */
3 -struct CK_AES_GMAC_PARAMS { /* 0x18 bytes */
3 -struct CB_RECALL4res { /* 0x4 bytes */
3 -struct CB_RECALL4args { /* 0x28 bytes */
3 -struct CB_ILLEGAL4res { /* 0x4 bytes */
3 -struct CB_GETATTR4res { /* 0x20 bytes */
3 -struct CB_GETATTR4args { /* 0x18 bytes */
3 -struct CB_COMPOUND4res { /* 0x28 bytes */
3 -struct CB_COMPOUND4args { /* 0x28 bytes */
3 -struct ACCESS4res { /* 0xc bytes */
3 -struct ACCESS4args { /* 0x4 bytes */
3 -struct ACCESS3resok { /* 0x68 bytes */
3 -struct ACCESS3resfail { /* 0x60 bytes */
3 -struct ACCESS3res { /* 0x70 bytes */
3 -struct ACCESS3args { /* 0x4c bytes */
3 +struct psm_ops { /* 0xd0 bytes */
3 +struct psm_ops { /* 0x130 bytes */
2 -struct zstream { /* 0x50 bytes */
2 -struct zrlock { /* 0x10 bytes */
2 -struct zpool_load_policy { /* 0x20 bytes */
2 -struct zio_link { /* 0x30 bytes */
2 -struct zio_cksum_salt { /* 0x20 bytes */
2 -struct zgd { /* 0x28 bytes */
2 -struct zfs_dbgmsg { /* 0x20 bytes */
2 -struct zfs_btree_index { /* 0x18 bytes */
2 -struct zfs_blkstat { /* 0x40 bytes */
2 -struct zfs_all_blkstats { /* 0xc408 bytes */
2 -struct zfetch { /* 0x38 bytes */
2 -struct vuid_addr_probe { /* 0x4 bytes */
2 -struct vis_identifier { /* 0x80 bytes */
2 -struct vdev_stat_ex { /* 0x2670 bytes */
2 -struct vdev_stat { /* 0x148 bytes */
2 -struct v { /* 0x20 bytes */
2 -struct uberblock { /* 0xd0 bytes */
2 -struct txg_node { /* 0x28 bytes */
2 -struct txg_list { /* 0x38 bytes */
2 -struct txg_handle { /* 0x10 bytes */
2 -struct tx_state { /* 0x78 bytes */
2 -struct tx_cpu { /* 0xc0 bytes */
2 -struct ttysize { /* 0x8 bytes */
2 -struct t_optmgmt { /* 0x18 bytes */
2 -struct space_map_phys { /* 0x140 bytes */
2 -struct space_map_entry { /* 0x18 bytes */
2 -struct space_map { /* 0x40 bytes */
2 -struct sockaddr_un { /* 0x6e bytes */
2 -struct smbios_vprobe { /* 0x20 bytes */
2 -struct smbios_tprobe { /* 0x20 bytes */
2 -struct smbios_strprop { /* 0x18 bytes */
2 -struct smbios_slot_peer { /* 0x6 bytes */
2 -struct smbios_slot { /* 0x20 bytes */
2 -struct smbios_processor_info_riscv { /* 0x78 bytes */
2 -struct smbios_processor_info { /* 0x8 bytes */
2 -struct smbios_processor_ext { /* 0x10 bytes */
2 -struct smbios_processor { /* 0x38 bytes */
2 -struct smbios_powersup { /* 0x28 bytes */
2 -struct smbios_port_ext { /* 0xa bytes */
2 -struct smbios_port { /* 0x18 bytes */
2 -struct smbios_pointdev { /* 0x6 bytes */
2 -struct smbios_pciexrc { /* 0x4 bytes */
2 -struct smbios_obdev_ext { /* 0x10 bytes */
2 -struct smbios_obdev { /* 0x10 bytes */
2 -struct smbios_memdevmap { /* 0x20 bytes */
2 -struct smbios_memdevice_ext { /* 0x10 bytes */
2 -struct smbios_memarrmap { /* 0x18 bytes */
2 -struct smbios_memarray_ext { /* 0x6 bytes */
2 -struct smbios_memarray { /* 0x18 bytes */
2 -struct smbios_lang { /* 0x10 bytes */
2 -struct smbios_iprobe { /* 0x20 bytes */
2 -struct smbios_hwsec { /* 0x4 bytes */
2 -struct smbios_fwinfo_comp { /* 0x4 bytes */
2 -struct smbios_fwinfo { /* 0x30 bytes */
2 -struct smbios_evtype { /* 0x2 bytes */
2 -struct smbios_evlog { /* 0x30 bytes */
2 -struct smbios_cooldev { /* 0x18 bytes */
2 -struct smbios_chassis_entry { /* 0x4 bytes */
2 -struct smbios_chassis { /* 0x18 bytes */
2 -struct smbios_cache { /* 0x28 bytes */
2 -struct smbios_boot { /* 0x18 bytes */
2 -struct smbios_bboard { /* 0x8 bytes */
2 -struct smbios_battery { /* 0x40 bytes */
2 -struct set_window { /* 0x30 bytes */
2 -struct set_socket { /* 0x28 bytes */
2 -struct set_page { /* 0x18 bytes */
2 -struct sem { /* 0x10 bytes */
2 -struct segkmem_lpcb { /* 0x48 bytes */
2 -struct sdev_plugin_ops { /* 0x20 bytes */
2 -struct scsi_capacity_16 { /* 0x20 bytes */
2 -struct scsi_asq_key_strings { /* 0x10 bytes */
2 -struct sas_phy_stats { /* 0x1b0 bytes */
2 -struct s3_args { /* 0x18 bytes */
2 -struct rrwlock { /* 0x30 bytes */
2 -struct rrmlock { /* 0x330 bytes */
2 -struct rpcstat { /* 0x20 bytes */
2 -struct range_seg_gap { /* 0x18 bytes */
2 -struct range_seg64 { /* 0x10 bytes */
2 -struct range_seg32 { /* 0x8 bytes */
2 -struct pstatus32 { /* 0x470 bytes */
2 -struct pstatus { /* 0x690 bytes */
2 -struct psinfo32 { /* 0x150 bytes */
2 -struct prsecflags { /* 0x28 bytes */
2 -struct proginfo { /* 0x8 bytes */
2 -struct power_entry { /* 0x8 bytes */
2 -struct post_op_vattr { /* 0x20 bytes */
2 -struct pool_scan_stat { /* 0x78 bytes */
2 -struct pool_removal_stat { /* 0x38 bytes */
2 -struct pool_checkpoint_stat { /* 0x18 bytes */
2 -struct polled_device { /* 0x18 bytes */
2 -struct pathcnf32 { /* 0x24 bytes */
2 -struct nfs_version_stats { /* 0x10 bytes */
2 -struct nfs_stats { /* 0x30 bytes */
2 -struct nfs_owner { /* 0x1c bytes */
2 -struct nfs_fsl_info { /* 0x28 bytes */
2 -struct nfs_fid { /* 0x24 bytes */
2 -struct nfs_delmapcall { /* 0x20 bytes */
2 -struct nfs_delmap_args { /* 0x40 bytes */
2 -struct nfs_clnt { /* 0xe8 bytes */
2 -struct nfs4_fhandle { /* 0x84 bytes */
2 -struct multilist_sublist { /* 0x40 bytes */
2 -struct multilist { /* 0x20 bytes */
2 -struct msghdr32 { /* 0x1c bytes */
2 -struct mode_caching { /* 0xc bytes */
2 -struct mntinfo_kstat { /* 0x1ec bytes */
2 -struct mmp_thread { /* 0x138 bytes */
2 -struct memwin_char { /* 0x38 bytes */
2 -struct mboot { /* 0x200 bytes */
2 -struct mac_capab_vnic_s { /* 0x18 bytes */
2 -struct mac_capab_aggr_s { /* 0x20 bytes */
2 -struct lwpstatus32 { /* 0x320 bytes */
2 -struct lwpstatus { /* 0x510 bytes */
2 -struct lwpsinfo32 { /* 0x68 bytes */
2 -struct lookup4_param { /* 0x38 bytes */
2 -struct lgrp_stats { /* 0x400 bytes */
2 -struct lgrp_shm_policy_seg { /* 0x30 bytes */
2 -struct lgrp_shm_locality { /* 0x18 bytes */
2 -struct lgrp_config_mem_rename { /* 0x10 bytes */
2 -struct kstat_timer { /* 0x50 bytes */
2 -struct ksemid { /* 0xb8 bytes */
2 -struct kdi_plat { /* 0x20 bytes */
2 -struct kdi_memrange { /* 0x10 bytes */
2 -struct kdi_mach { /* 0x58 bytes */
2 -struct kdi_drreg { /* 0x30 bytes */
2 -struct kdi_crumb { /* 0x28 bytes */
2 -struct kdi_cpusave { /* 0x138 bytes */
2 -struct ipart { /* 0x10 bytes */
2 -struct iowin_char { /* 0x30 bytes */
2 -struct iommulib_ops { /* 0x60 bytes */
2 -struct intr_entry { /* 0x8 bytes */
2 -struct inthandler { /* 0x60 bytes */
2 -struct inquire_window { /* 0x78 bytes */
2 -struct inquire_socket { /* 0x1c bytes */
2 -struct inquire_adapter { /* 0x40 bytes */
2 -struct gss_channel_bindings_struct { /* 0x40 bytes */
2 -struct gss_OID_set_desc_struct { /* 0x10 bytes */
2 -struct gss_OID_desc_struct32 { /* 0x8 bytes */
2 -struct gfx_entry { /* 0x20 bytes */
2 -struct get_window { /* 0x20 bytes */
2 -struct get_ss_status { /* 0x18 bytes */
2 -struct get_socket { /* 0x24 bytes */
2 -struct get_page { /* 0x18 bytes */
2 -struct get_adapter { /* 0x8 bytes */
2 -struct font_info { /* 0x20 bytes */
2 -struct flow_desc_s { /* 0x88 bytes */
2 -struct fil_info { /* 0x28 bytes */
2 -struct fattr3_res { /* 0x18 bytes */
2 -struct failinfo { /* 0x28 bytes */
2 -struct dsl_sync_task { /* 0x60 bytes */
2 -struct dsl_props_set_arg { /* 0x18 bytes */
2 -struct dsl_prop_record { /* 0x38 bytes */
2 -struct dsl_prop_cb_record { /* 0x40 bytes */
2 -struct dsl_pool { /* 0x3b0 bytes */
2 -struct dnode_phys { /* 0x200 bytes */
2 -struct dnode_handle { /* 0x18 bytes */
2 -struct dnode_children { /* 0x50 bytes */
2 -struct dnode { /* 0x2b0 bytes */
2 -struct dmu_object_info { /* 0x40 bytes */
2 -struct dmu_buf_user { /* 0x48 bytes */
2 -struct dmae_chnl { /* 0x28 bytes */
2 -struct ddt_stat { /* 0x40 bytes */
2 -struct ddt_object { /* 0x18 bytes */
2 -struct ddt_histogram { /* 0x1000 bytes */
2 -struct ddt_bookmark { /* 0x20 bytes */
2 -struct ddt { /* 0x60f0 bytes */
2 -struct dcopy_query_s { /* 0x8 bytes */
2 -struct crypto_provider_entry { /* 0x8 bytes */
2 -struct crypto_mechanism32 { /* 0x10 bytes */
2 -struct crypto_dev_list_entry { /* 0x108 bytes */
2 -struct cpupart_kstat { /* 0x150 bytes */
2 -struct cpu_vminfo { /* 0x7c bytes */
2 -struct cpu_syswait { /* 0xc bytes */
2 -struct cpu_sysinfo { /* 0xec bytes */
2 -struct cpu_stat { /* 0x17c bytes */
2 -struct compinfo { /* 0x18 bytes */
2 -struct cmt_lgrp { /* 0x28 bytes */
2 -struct clstat { /* 0xc0 bytes */
2 -struct clinfo { /* 0x14 bytes */
2 -struct cku_private { /* 0xf0 bytes */
2 -struct chtab { /* 0x20 bytes */
2 -struct chhead { /* 0x30 bytes */
2 -struct calllist_s { /* 0x60 bytes */
2 -struct brand_proc_reg { /* 0x10 bytes */
2 -struct brand_proc_data { /* 0x40 bytes */
2 -struct brand_elf_data32 { /* 0x1c bytes */
2 -struct brand_elf_data { /* 0x38 bytes */
2 -struct brand_common_reg32 { /* 0x8 bytes */
2 -struct bptree_phys { /* 0x28 bytes */
2 -struct bptree_entry_phys { /* 0xa8 bytes */
2 -struct bpobj_phys { /* 0x30 bytes */
2 -struct bpobj { /* 0x38 bytes */
2 -struct block_descriptor { /* 0x8 bytes */
2 -struct beep_state { /* 0x50 bytes */
2 -struct beep_params { /* 0xc bytes */
2 -struct beep_entry { /* 0x4 bytes */
2 -struct authsys_parms { /* 0x28 bytes */
2 -struct authdes_fullname { /* 0x18 bytes */
2 -struct authdes_cred { /* 0x28 bytes */
2 -struct ace_object { /* 0x2c bytes */
2 -struct ace4vals { /* 0x30 bytes */
2 -struct ace4_list { /* 0x108 bytes */
2 -struct _ctag { /* 0x20 bytes */
2 -struct __cpc_args32 { /* 0xc bytes */
2 -struct __cpc_args { /* 0x18 bytes */
2 -struct READDIRPLUS3vres { /* 0x60 bytes */
2 -struct READDIR3vres { /* 0x50 bytes */
2 -struct READ3vres { /* 0x50 bytes */
2 -struct READ3uiores { /* 0x28 bytes */
2 -struct LOOKUP3vres { /* 0x90 bytes */
2 -struct GETATTR3vres { /* 0x20 bytes */
2 -struct COMPOUND4res_clnt { /* 0x20 bytes */
2 -struct COMPOUND4args_clnt { /* 0x10 bytes */
2 -struct CK_ECDH1_DERIVE_PARAMS { /* 0x28 bytes */
2 -struct CK_AES_CTR_PARAMS { /* 0x18 bytes */
2 +struct v { /* 0x20 bytes */
2 +struct cku_private { /* 0xf0 bytes */
1 -struct vt_stat { /* 0x6 bytes */
1 -struct vt_mode { /* 0x8 bytes */
1 -struct vt_dispinfo { /* 0xc bytes */
1 -struct vis_cmap { /* 0x20 bytes */
1 -struct vc_waitactive_msg { /* 0x20 bytes */
1 -struct vc_state { /* 0xa8 bytes */
1 -struct usmp_cmd32 { /* 0x14 bytes */
1 -struct usmp_cmd { /* 0x28 bytes */
1 -struct unsubscribe_args { /* 0xc bytes */
1 -struct ufs_slot { /* 0x30 bytes */
1 -struct ufs_fsd { /* 0xc bytes */
1 -struct ufs_acl { /* 0xc bytes */
1 -struct ufm_ioc_report32 { /* 0x40c bytes */
1 -struct ufm_ioc_report { /* 0x418 bytes */
1 -struct ufm_ioc_readimg32 { /* 0x428 bytes */
1 -struct ufm_ioc_readimg { /* 0x430 bytes */
1 -struct ufm_ioc_getcaps { /* 0x408 bytes */
1 -struct ufm_ioc_bufsz32 { /* 0x408 bytes */
1 -struct ufm_ioc_bufsz { /* 0x410 bytes */
1 -struct ufid { /* 0xc bytes */
1 -struct tnf_file_header { /* 0x24 bytes */
1 -struct threadtrans { /* 0x10 bytes */
1 -struct tchars { /* 0x6 bytes */
1 -struct t_uderr { /* 0x28 bytes */
1 -struct t_discon { /* 0x18 bytes */
1 -struct swrand_stats { /* 0x28 bytes */
1 -struct subscribe_args { /* 0x20 bytes */
1 -struct stat64 { /* 0x80 bytes */
1 -struct start_stop_cycle_counter_log { /* 0x28 bytes */
1 -struct ss_make_device_node { /* 0x38 bytes */
1 -struct srn_event_info { /* 0x4 bytes */
1 -struct sp_filter { /* 0x18 bytes */
1 -struct sof_socktuple32 { /* 0xc bytes */
1 -struct sof_socktuple { /* 0xc bytes */
1 -struct sockinfo { /* 0x870 bytes */
1 -struct sockconfig_socktable_entry { /* 0x434 bytes */
1 -struct sockconfig_socktable32 { /* 0x8 bytes */
1 -struct sockconfig_socktable { /* 0x10 bytes */
1 -struct sockconfig_filter_props32 { /* 0x18 bytes */
1 -struct sockconfig_filter_props { /* 0x28 bytes */
1 -struct sockaddr_ux { /* 0x18 bytes */
1 -struct sockaddr_ll { /* 0x14 bytes */
1 -struct so_snd_bufinfo { /* 0x20 bytes */
1 -struct smp_snw3_phy_cap { /* 0x4 bytes */
1 -struct smp_request_frame { /* 0x5 bytes */
1 -struct smp_report_general_resp { /* 0x44 bytes */
1 -struct smp_discover_resp { /* 0x68 bytes */
1 -struct signalfd_siginfo { /* 0x80 bytes */
1 -struct shmid_ds64 { /* 0x60 bytes */
1 -struct shmid_ds32 { /* 0x70 bytes */
1 -struct shmid_ds { /* 0x88 bytes */
1 -struct sgttyb { /* 0x8 bytes */
1 -struct sendfile_stats { /* 0x14 bytes */
1 -struct semid_ds64 { /* 0x38 bytes */
1 -struct semid_ds32 { /* 0x54 bytes */
1 -struct semid_ds { /* 0x60 bytes */
1 -struct sembuf { /* 0x6 bytes */
1 -struct sem_undo { /* 0x40 bytes */
1 -struct segacct { /* 0x38 bytes */
1 -struct sect_trailer { /* 0x8 bytes */
1 -struct sec_data32 { /* 0x14 bytes */
1 -struct sdev_nc_node { /* 0x20 bytes */
1 -struct sdev_fid { /* 0xc bytes */
1 -struct sdev_door_res { /* 0x4 bytes */
1 -struct sdev_door_arg { /* 0x1 bytes */
1 -struct scsi_stream_cmd_sense_descr { /* 0x4 bytes */
1 -struct scsi_stream_cmd_data { /* 0x1 bytes */
1 -struct scsi_sk_specific_sense_descr { /* 0x8 bytes */
1 -struct scsi_pkt_cache_wrapper { /* 0xe0 bytes */
1 -struct scsi_fru_sense_descr { /* 0x4 bytes */
1 -struct scsi_descr_template { /* 0x2 bytes */
1 -struct scsi_cmd_specific_sense_descr { /* 0xc bytes */
1 -struct scsi_block_cmd_sense_descr { /* 0x4 bytes */
1 -struct scsi_ata_status_ret_sense_descr { /* 0xe bytes */
1 -struct sclient_reg_t { /* 0x18 bytes */
1 -struct sclient_list_t { /* 0x8 bytes */
1 -struct rollbuf { /* 0x118 bytes */
1 -struct rnd_stats { /* 0x18 bytes */
1 -struct rfs4_state_wait { /* 0x18 bytes */
1 -struct rfs4_state { /* 0x70 bytes */
1 -struct rfs4_openowner { /* 0x1b8 bytes */
1 -struct rfs4_lockowner { /* 0x30 bytes */
1 -struct rfs4_lo_state { /* 0x180 bytes */
1 -struct rfs4_file { /* 0xc0 bytes */
1 -struct rfs4_dinfo { /* 0x60 bytes */
1 -struct rfs4_deleg_state { /* 0x58 bytes */
1 -struct rfs4_clntip { /* 0x110 bytes */
1 -struct rfs4_client { /* 0x260 bytes */
1 -struct quotctl32 { /* 0xc bytes */
1 -struct quotctl { /* 0x10 bytes */
1 -struct publish_args { /* 0x10 bytes */
1 -struct pt_own { /* 0x8 bytes */
1 -struct prxmap32 { /* 0x98 bytes */
1 -struct prxmap { /* 0xd8 bytes */
1 -struct prwatch32 { /* 0x10 bytes */
1 -struct prwatch { /* 0x18 bytes */
1 -struct prusage32 { /* 0x100 bytes */
1 -struct prusage { /* 0x1f8 bytes */
1 -struct prupanic { /* 0x408 bytes */
1 -struct prsockopts_bool_opts { /* 0x4 bytes */
1 -struct prpageheader32 { /* 0x10 bytes */
1 -struct prpageheader { /* 0x20 bytes */
1 -struct propnvl_args { /* 0x14 bytes */
1 -struct prmap32 { /* 0x60 bytes */
1 -struct prmap { /* 0x68 bytes */
1 -struct prlwpname { /* 0x28 bytes */
1 -struct prkillinfo { /* 0x108 bytes */
1 -struct priovec32 { /* 0xc bytes */
1 -struct priovec { /* 0x18 bytes */
1 -struct prheader32 { /* 0x8 bytes */
1 -struct prheader { /* 0x10 bytes */
1 -struct prfdinfo_core { /* 0x440 bytes */
1 -struct prfdinfo { /* 0xc8 bytes */
1 -struct prcred32 { /* 0x20 bytes */
1 -struct prasmap32 { /* 0x60 bytes */
1 -struct prasmap { /* 0x68 bytes */
1 -struct pr_misc_header { /* 0x8 bytes */
1 -struct ppsclockev32 { /* 0xc bytes */
1 -struct ppsclockev { /* 0x18 bytes */
1 -struct portfop_vfs_hash { /* 0x10 bytes */
1 -struct port_kstat { /* 0x30 bytes */
1 -struct port_ksource { /* 0x20 bytes */
1 -struct port_gettimer { /* 0x28 bytes */
1 -struct port_event32 { /* 0x10 bytes */
1 -struct port_event { /* 0x18 bytes */
1 -struct pool_xtransfer32 { /* 0x14 bytes */
1 -struct pool_xtransfer { /* 0x18 bytes */
1 -struct pool_transfer { /* 0x14 bytes */
1 -struct pool_status { /* 0x4 bytes */
1 -struct pool_query32 { /* 0x8 bytes */
1 -struct pool_query { /* 0x10 bytes */
1 -struct pool_proprm32 { /* 0x14 bytes */
1 -struct pool_proprm { /* 0x20 bytes */
1 -struct pool_propput32 { /* 0x14 bytes */
1 -struct pool_propput { /* 0x20 bytes */
1 -struct pool_propget32 { /* 0x1c bytes */
1 -struct pool_propget { /* 0x28 bytes */
1 -struct pool_dissoc { /* 0x8 bytes */
1 -struct pool_destroy { /* 0xc bytes */
1 -struct pool_create { /* 0xc bytes */
1 -struct pool_bindq { /* 0xc bytes */
1 -struct pool_bind { /* 0xc bytes */
1 -struct pool_assoc { /* 0xc bytes */
1 -struct pm_state_change32 { /* 0x1c bytes */
1 -struct pm_searchargs32_t { /* 0xc bytes */
1 -struct pm_req32 { /* 0x14 bytes */
1 -struct pm_req { /* 0x20 bytes */
1 -struct pcmcia_parent_private { /* 0x58 bytes */
1 -struct pcmcia_mif { /* 0x18 bytes */
1 -struct pcmcia_logical_window { /* 0x30 bytes */
1 -struct pcmcia_adapter { /* 0xe0 bytes */
1 -struct pcm_make_dev { /* 0x440 bytes */
1 -struct pcm_device_node { /* 0x38 bytes */
1 -struct pcm_device_info { /* 0xd8 bytes */
1 -struct pcix_attr { /* 0x4 bytes */
1 -struct pcie_tlp_hdr { /* 0x4 bytes */
1 -struct pcie_cpl { /* 0x8 bytes */
1 -struct pattr_addr_s { /* 0x3 bytes */
1 -struct part_info32 { /* 0x8 bytes */
1 -struct part_info { /* 0x10 bytes */
1 -struct parameter_control { /* 0x1 bytes */
1 -struct ocg { /* 0x3dc bytes */
1 -struct objfs_info { /* 0x4 bytes */
1 -struct nvp_devname { /* 0x28 bytes */
1 -struct nfs_xuio { /* 0x298 bytes */
1 -struct neti_stack_head_s { /* 0x8 bytes */
1 -struct nd_router_advert { /* 0x10 bytes */
1 -struct nd_opt_prefix_info { /* 0x20 bytes */
1 -struct nd_opt_lla { /* 0x42 bytes */
1 -struct msqid_ds64 { /* 0x58 bytes */
1 -struct msqid_ds { /* 0x88 bytes */
1 -struct msgsnap_mhead { /* 0x10 bytes */
1 -struct msgsnap_head { /* 0x10 bytes */
1 -struct modeheader_seq { /* 0xc bytes */
1 -struct mode_speed { /* 0x4 bytes */
1 -struct mode_info_power_cond { /* 0xa bytes */
1 -struct mode_info_excpt_page { /* 0xc bytes */
1 -struct mode_header_g1 { /* 0x8 bytes */
1 -struct mode_err_recov { /* 0xc bytes */
1 -struct mode_disco_reco { /* 0x10 bytes */
1 -struct mode_cache_scsi3 { /* 0x14 bytes */
1 -struct mode_cache { /* 0xc bytes */
1 -struct mm_logentry { /* 0x80 bytes */
1 -struct mem_vtop32 { /* 0xc bytes */
1 -struct mac_secondary_addr_s { /* 0x284 bytes */
1 -struct lufs_save { /* 0x18 bytes */
1 -struct lufs_buf { /* 0x100 bytes */
1 -struct ltchars { /* 0x6 bytes */
1 -struct loinfo { /* 0x58 bytes */
1 -struct lofi_state { /* 0x510 bytes */
1 -struct lofi_compress_info { /* 0x20 bytes */
1 -struct lofi_comp_cache { /* 0x20 bytes */
1 -struct lockfs32 { /* 0x14 bytes */
1 -struct lobucket { /* 0x40 bytes */
1 -struct lo_retired_ht { /* 0x18 bytes */
1 -struct lnode { /* 0x20 bytes */
1 -struct lfsnode { /* 0xe8 bytes */
1 -struct kstat32 { /* 0x98 bytes */
1 -struct kiockeymap { /* 0x18 bytes */
1 -struct kiockey { /* 0x10 bytes */
1 -struct jwinsize { /* 0x6 bytes */
1 -struct irq_alloc_t { /* 0x28 bytes */
1 -struct ipcmsgbuf { /* 0x10 bytes */
1 -struct ip6_opt { /* 0x2 bytes */
1 -struct iommulib_nexops { /* 0x80 bytes */
1 -struct io_alloc_t { /* 0x48 bytes */
1 -struct instats { /* 0x330 bytes */
1 -struct ifqueue { /* 0x20 bytes */
1 -struct ifnet { /* 0xb8 bytes */
1 -struct ifaddr { /* 0x30 bytes */
1 -struct hook_stack_head { /* 0x8 bytes */
1 -struct gss_clnt_data32 { /* 0xd0 bytes */
1 -struct get_cookies_and_dip_t { /* 0x58 bytes */
1 -struct gcmd_padded_wrapper { /* 0xc8 bytes */
1 -struct fsszone { /* 0x28 bytes */
1 -struct fsspset { /* 0x40 bytes */
1 -struct fssproj { /* 0x50 bytes */
1 -struct fssproc { /* 0x50 bytes */
1 -struct fssbuf { /* 0x10 bytes */
1 -struct freq_request { /* 0x8 bytes */
1 -struct frame32 { /* 0x8 bytes */
1 -struct fiotune { /* 0x14 bytes */
1 -struct fiolog { /* 0xc bytes */
1 -struct fioio32 { /* 0xc bytes */
1 -struct fioio { /* 0x10 bytes */
1 -struct fio_lufs_stats { /* 0x608 bytes */
1 -struct file_obj32 { /* 0x28 bytes */
1 -struct file_obj { /* 0x50 bytes */
1 -struct fifodata { /* 0x140 bytes */
1 -struct extvtoc { /* 0x308 bytes */
1 -struct extpartition { /* 0x18 bytes */
1 -struct extpart_info { /* 0x10 bytes */
1 -struct extent_block { /* 0x20 bytes */
1 -struct extent { /* 0xc bytes */
1 -struct ether_vlan_extinfo { /* 0x4 bytes */
1 -struct dv_fid { /* 0xc bytes */
1 -struct dtrace_status { /* 0x58 bytes */
1 -struct dtrace_repldesc { /* 0x288 bytes */
1 -struct dtrace_rechdr { /* 0xc bytes */
1 -struct dtrace_recdesc { /* 0x20 bytes */
1 -struct dtrace_providerdesc { /* 0x5c bytes */
1 -struct dtrace_preddesc { /* 0x10 bytes */
1 -struct dtrace_ppriv { /* 0xc bytes */
1 -struct dtrace_fmtdesc { /* 0x10 bytes */
1 -struct dtrace_eprobedesc { /* 0x38 bytes */
1 -struct dtrace_ecbdesc { /* 0x170 bytes */
1 -struct dtrace_difv { /* 0x14 bytes */
1 -struct dtrace_diftype { /* 0x8 bytes */
1 -struct dtrace_difo { /* 0x40 bytes */
1 -struct dtrace_conf { /* 0x30 bytes */
1 -struct dtrace_bufdesc { /* 0x30 bytes */
1 -struct dtrace_aggdesc { /* 0x48 bytes */
1 -struct dtrace_actdesc { /* 0x30 bytes */
1 -struct door_return_desc32 { /* 0x8 bytes */
1 -struct door_return_desc { /* 0x10 bytes */
1 -struct door_results32 { /* 0x20 bytes */
1 -struct door_results { /* 0x40 bytes */
1 -struct door_arg32 { /* 0x18 bytes */
1 -struct dof_sec { /* 0x20 bytes */
1 -struct dof_relohdr { /* 0xc bytes */
1 -struct dof_relodesc { /* 0x18 bytes */
1 -struct dof_provider { /* 0x2c bytes */
1 -struct dof_probedesc { /* 0x18 bytes */
1 -struct dof_probe { /* 0x30 bytes */
1 -struct dof_optdesc { /* 0x10 bytes */
1 -struct dof_helper { /* 0x50 bytes */
1 -struct dof_hdr { /* 0x40 bytes */
1 -struct dof_ecbdesc { /* 0x18 bytes */
1 -struct dof_difohdr { /* 0xc bytes */
1 -struct dof_actdesc { /* 0x20 bytes */
1 -struct dld_secobj { /* 0x128 bytes */
1 -struct dld_macaddrinfo { /* 0x124 bytes */
1 -struct dld_ioc_zid { /* 0x8 bytes */
1 -struct dld_ioc_walkflow { /* 0x8c bytes */
1 -struct dld_ioc_usagelog { /* 0xc bytes */
1 -struct dld_ioc_tranio { /* 0x1c bytes */
1 -struct dld_ioc_secobj_unset { /* 0x20 bytes */
1 -struct dld_ioc_secobj_set { /* 0x12c bytes */
1 -struct dld_ioc_secobj_get { /* 0x130 bytes */
1 -struct dld_ioc_rename { /* 0x28 bytes */
1 -struct dld_ioc_removeflow { /* 0x80 bytes */
1 -struct dld_ioc_phys_attr { /* 0x28 bytes */
1 -struct dld_ioc_modifyflow { /* 0x3cbc bytes */
1 -struct dld_ioc_macprop_s { /* 0x118 bytes */
1 -struct dld_ioc_macaddrget { /* 0xc bytes */
1 -struct dld_ioc_led { /* 0x10 bytes */
1 -struct dld_ioc_hwgrpget { /* 0xc bytes */
1 -struct dld_ioc_gettran { /* 0x10 bytes */
1 -struct dld_ioc_door { /* 0x4 bytes */
1 -struct dld_ioc_attr { /* 0x8 bytes */
1 -struct dld_ioc_addflow { /* 0x3d48 bytes */
1 -struct dld_hwgrpinfo { /* 0x630 bytes */
1 -struct dld_flowinfo { /* 0x3d4c bytes */
1 -struct dl_ipnetinfo { /* 0x18 bytes */
1 -struct dkl_partition { /* 0xc bytes */
1 -struct dk_vtoc { /* 0x1c8 bytes */
1 -struct dk_updatefw_32 { /* 0xc bytes */
1 -struct dk_updatefw { /* 0x10 bytes */
1 -struct dk_temperature { /* 0x8 bytes */
1 -struct dk_map32 { /* 0x8 bytes */
1 -struct dk_map { /* 0x10 bytes */
1 -struct dk_label { /* 0x200 bytes */
1 -struct dk_disk_id { /* 0x48 bytes */
1 -struct dk_allmap32 { /* 0x80 bytes */
1 -struct dk_allmap { /* 0x100 bytes */
1 -struct dirtemplate { /* 0x18 bytes */
1 -struct dimm_slot { /* 0x10 bytes */
1 -struct devfs_data { /* 0x10 bytes */
1 -struct des_clnt_data32 { /* 0x18 bytes */
1 -struct deflate_state { /* 0xa8 bytes */
1 -struct defect_header32 { /* 0x8 bytes */
1 -struct defect_header { /* 0x10 bytes */
1 -struct ddi_hp_property32 { /* 0x8 bytes */
1 -struct ddi_hp_property { /* 0x10 bytes */
1 -struct dc_led_ctl { /* 0x4 bytes */
1 -struct ctf_type { /* 0x10 bytes */
1 -struct ctf_sect { /* 0x38 bytes */
1 -struct ctf_preamble { /* 0x4 bytes */
1 -struct ctf_membinfo { /* 0x10 bytes */
1 -struct ctf_member { /* 0x8 bytes */
1 -struct ctf_lmember { /* 0x10 bytes */
1 -struct ctf_lblinfo { /* 0x8 bytes */
1 -struct ctf_lblent { /* 0x8 bytes */
1 -struct ctf_header { /* 0x24 bytes */
1 -struct ctf_enum { /* 0x8 bytes */
1 -struct ctf_encoding { /* 0xc bytes */
1 -struct ctf_array { /* 0x8 bytes */
1 -struct ctf_arinfo { /* 0x18 bytes */
1 -struct csss_adapter_info_t { /* 0x34 bytes */
1 -struct csregister { /* 0x18 bytes */
1 -struct cs_window_t { /* 0x20 bytes */
1 -struct cs_ss_event_text_t { /* 0x10 bytes */
1 -struct cs_socket_t { /* 0x200 bytes */
1 -struct cs_globals_t { /* 0x50 bytes */
1 -struct cs_csfunc2text_strings_t { /* 0x10 bytes */
1 -struct cs_adapter_t { /* 0x3c bytes */
1 -struct crypto_unload_soft_module { /* 0x104 bytes */
1 -struct crypto_object_attribute32 { /* 0x10 bytes */
1 -struct crypto_meta { /* 0x200 bytes */
1 -struct crypto_mechanism_info32 { /* 0x10 bytes */
1 -struct crypto_load_soft_disabled { /* 0x128 bytes */
1 -struct crypto_load_soft_config { /* 0x128 bytes */
1 -struct crypto_load_dev_disabled { /* 0x12c bytes */
1 -struct crypto_key32 { /* 0xc bytes */
1 -struct crypto_get_soft_list32 { /* 0x10 bytes */
1 -struct crypto_get_soft_list { /* 0x18 bytes */
1 -struct crypto_get_soft_info { /* 0x128 bytes */
1 -struct crypto_get_dev_list { /* 0x110 bytes */
1 -struct crypto_get_dev_info { /* 0x12c bytes */
1 -struct cpuid_get_hwcap32 { /* 0xc bytes */
1 -struct control_args { /* 0x8 bytes */
1 -struct cons_getterm32 { /* 0x8 bytes */
1 -struct cons_getterm { /* 0x10 bytes */
1 -struct config_regs_t { /* 0x50 bytes */
1 -struct compbuf { /* 0x10 bytes */
1 -struct client_types_t { /* 0x10 bytes */
1 -struct client_t { /* 0x220 bytes */
1 -struct cistpl_pd_struct_t { /* 0x10 bytes */
1 -struct cistpl_ignore_list_t { /* 0x1 bytes */
1 -struct cistpl_devspeed_struct_t { /* 0x20 bytes */
1 -struct cistpl_callout_t { /* 0x18 bytes */
1 -struct cisregister_t { /* 0x18 bytes */
1 -struct cisptr_t { /* 0x18 bytes */
1 -struct cis_info_t { /* 0x18 bytes */
1 -struct chandata { /* 0x18 bytes */
1 -struct box { /* 0xc bytes */
1 -struct bind_args { /* 0x10 bytes */
1 -struct authdes_verf { /* 0x18 bytes */
1 -struct arphdr { /* 0x8 bytes */
1 -struct aiocb64_32 { /* 0x44 bytes */
1 -struct aiocb32 { /* 0x40 bytes */
1 -struct adr_s { /* 0x10 bytes */
1 -struct acct { /* 0x28 bytes */
1 -struct ac_res { /* 0x8 bytes */
1 -struct _cmac_instance { /* 0xc bytes */
1 -struct _cmac_instance { /* 0x4 bytes */
1 -struct CK_ECDH1_DERIVE_PARAMS32 { /* 0x14 bytes */
1 -struct CK_AES_GMAC_PARAMS32 { /* 0xc bytes */
1 -struct CK_AES_GCM_PARAMS32 { /* 0x18 bytes */
1 -struct CK_AES_CTR_PARAMS32 { /* 0x14 bytes */
1 -struct CK_AES_CCM_PARAMS32 { /* 0x18 bytes */
Other than CTF differences, a wsdiff
is clean.
genunix
has grown in size by around 100KiB
-rwxr-xr-x 1 af other 4482776 Nov 29 23:18 proto.old/root_i386-nd/kernel/amd64/genunix -rwxr-xr-x 1 af other 4586792 Nov 30 10:14 proto/root_i386-nd/kernel/amd64/genunix
but the overall size of proto has decreased by ~118K
% du -Aks proto* 274686074 proto 274807314 proto.old
Updated by Andy Fiddaman almost 2 years ago
This has been running in OmniOS bloody for a couple of weeks and I've been using mdb
and dtrace
there continually, and experienced no problems. ::ctfinfo
shows sizes against modules and ::nm -f ctype
is able to show function definitions.
Updated by Electric Monk almost 2 years ago
- Status changed from In Progress to Closed
- % Done changed from 0 to 100
git commit 3cac7b0d73edf3f2674ad0f64d1fff3d2e59ae8c
commit 3cac7b0d73edf3f2674ad0f64d1fff3d2e59ae8c Author: Andy Fiddaman <omnios@citrus-it.co.uk> Date: 2021-12-09T15:37:51.000Z 14255 gcc10 removes symbols from genunix, impeding CTF uniquification Reviewed by: Jason King <jason.brian.king+illumos@gmail.com> Reviewed by: Toomas Soome <tsoome@me.com> Approved by: Dan McDonald <danmcd@joyent.com>
Updated by Andy Fiddaman over 1 year ago
- Related to Feature #14421: use GCC 10 as default primary compiler added